add readme.md
Hunter
Thursday, August 1st, 2024 at 11:55 PM
1 +# 🪆 matryoshka
2 +
3 +a hierarchical task manager that helps you break complex tasks down into manageable subtasks.
4 +
5 +<i>now available on <a href="https://hunterirving.github.io/matryoshka/">GitHub Pages</a>!</i>
6 +
7 +### key features
8 +- unlimited subtask depth
9 +- intuitive keyboard controls for rapid navigation
10 +- automatic saving using browser's local storage
11 +- works completely offline
12 +
13 +### quickstart
14 +1. start by adding subtasks to the root "todo" task
15 +2. use `Shift + Arrow Right` to navigate into a subtask, making it the new parent task
16 +3. break subtasks down further as desired
17 +4. use `Shift + Arrow Left` to return to parent tasks
18 +5. quickly mark tasks as complete or incomplete using `Shift + Enter`
19 +6. reorganize tasks using `Shift + Arrow Up/Down`
20 +
21 +
22 +## controls
23 +
24 +### navigation
25 +- `Arrow Up/Down` move between tasks at the same level
26 +- `Shift + Arrow Right` navigate into a subtask
27 +- `Shift + Arrow Left` navigate back to the parent task
28 +
29 +### task management
30 +- `Enter` add a new task below the current selection
31 +- `Arrow Down` (on last subtask) add a new task at the bottom of the list
32 +- `Backspace` (on empty task): delete the current task (including any subtasks)
33 +- `Shift + Enter` toggle task completion status (status changes cascade to subtasks)
34 +- `Shift + Arrow Up/Down` reposition the selected task within its current level
35 +
36 +### text editing
37 +- standard text editing controls apply when a task's text area is focused
38 +- `Command/Ctrl + C` copy the entire text of the currently selected task
39 +- `Command/Ctrl + V` paste text content from the clipboard into the current task's text input
40 +
41 +## data persistence
42 +your task tree is automatically saved to your browser's local storage. this ensures your tasks will persist even if you close the browser or refresh the page. note that clearing your browser data may erase your saved tasks.
43 +
44 +## browser compatibility
45 +this application is designed to run on modern web browsers with javascript enabled.
46 +
47 +## privacy
48 +all data is stored locally on your machine. no data is sent to or stored on any external servers.
49 +
50 +## license
51 +this project is licensed under the GNU general public license v3.0.