Skip to content

Commit 8ebd317

Browse files
committed
Add Quick Start Guide for new users
1 parent df80679 commit 8ebd317

File tree

1 file changed

+308
-0
lines changed

1 file changed

+308
-0
lines changed

QUICKSTART.md

Lines changed: 308 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,308 @@
1+
# Quick Start Guide
2+
3+
Get started with Task Manager CLI in under 5 minutes!
4+
5+
## Installation
6+
7+
### Quick Install (Recommended)
8+
9+
```bash
10+
# Clone and build
11+
git clone https://github.com/codeforgood-org/dotnet-task-manager.git
12+
cd dotnet-task-manager
13+
./build.sh build
14+
15+
# Run your first command
16+
./build.sh run -- help
17+
```
18+
19+
### Using Docker
20+
21+
```bash
22+
docker build -t taskmanager .
23+
docker run taskmanager help
24+
```
25+
26+
## First Steps
27+
28+
### 1. Add Your First Task
29+
30+
```bash
31+
taskman add "Learn Task Manager CLI" --priority 5
32+
```
33+
34+
### 2. View Your Tasks
35+
36+
```bash
37+
taskman list
38+
```
39+
40+
### 3. Add More Tasks
41+
42+
```bash
43+
# Work tasks
44+
taskman add "Review pull requests" --priority 4 --tags work,urgent
45+
taskman add "Write documentation" --priority 3 --tags work,docs
46+
47+
# Personal tasks
48+
taskman add "Buy groceries" --priority 2 --tags personal,shopping
49+
taskman add "Schedule dentist" --priority 3 --tags personal,health --due 2024-02-01
50+
```
51+
52+
### 4. Complete a Task
53+
54+
```bash
55+
taskman complete 1
56+
```
57+
58+
### 5. View Statistics
59+
60+
```bash
61+
taskman stats
62+
```
63+
64+
## Common Commands Cheat Sheet
65+
66+
| Command | Description | Example |
67+
|---------|-------------|---------|
68+
| `add` | Add new task | `taskman add "Task description" --priority 4 --tags work` |
69+
| `list` | List all tasks | `taskman list` |
70+
| `list --pending` | List pending only | `taskman list --pending` |
71+
| `list --tag TAG` | Filter by tag | `taskman list --tag work` |
72+
| `complete ID` | Mark as done | `taskman complete 1` |
73+
| `remove ID` | Delete task | `taskman remove 1` |
74+
| `update ID DESC` | Update description | `taskman update 1 "New description"` |
75+
| `priority ID NUM` | Change priority | `taskman priority 1 5` |
76+
| `search QUERY` | Find tasks | `taskman search meeting` |
77+
| `clear` | Remove completed | `taskman clear` |
78+
| `stats` | View statistics | `taskman stats` |
79+
| `export` | Export tasks | `taskman export --format csv` |
80+
| `import` | Import tasks | `taskman import backup.json` |
81+
82+
## Priority Levels
83+
84+
- **5** - Critical/Urgent (★★★★★)
85+
- **4** - High (★★★★)
86+
- **3** - Normal (★★★) - Default
87+
- **2** - Low (★★)
88+
- **1** - Very Low (★)
89+
90+
## Tagging Best Practices
91+
92+
Use tags to categorize and filter:
93+
94+
```bash
95+
# Context tags
96+
--tags @work, @home, @errands
97+
98+
# Project tags
99+
--tags project-alpha, project-beta
100+
101+
# Type tags
102+
--tags bug, feature, meeting
103+
104+
# Priority indicators
105+
--tags urgent, important
106+
107+
# Combine multiple
108+
--tags work,urgent,bug
109+
```
110+
111+
## Example Workflows
112+
113+
### Daily Morning Routine
114+
115+
```bash
116+
# Check what's pending
117+
taskman list --pending
118+
119+
# See what's due today
120+
taskman stats
121+
122+
# Add today's priorities
123+
taskman add "Team standup" --priority 4 --tags work,meeting
124+
taskman add "Review PRs" --priority 5 --tags work,urgent
125+
```
126+
127+
### Weekly Review
128+
129+
```bash
130+
# View all tasks
131+
taskman list
132+
133+
# Export weekly report
134+
taskman export --format markdown --output weekly-report.md
135+
136+
# Clear completed tasks
137+
taskman clear
138+
139+
# Plan next week
140+
taskman add "Plan sprint" --priority 4 --due 2024-01-22 --tags work,planning
141+
```
142+
143+
### Project Management
144+
145+
```bash
146+
# Add project tasks
147+
taskman add "Design API" --priority 5 --tags project-x,design
148+
taskman add "Write tests" --priority 4 --tags project-x,testing
149+
taskman add "Documentation" --priority 3 --tags project-x,docs
150+
151+
# View project tasks
152+
taskman list --tag project-x
153+
154+
# Search within project
155+
taskman search API
156+
```
157+
158+
## Configuration
159+
160+
Create `appsettings.json` to customize:
161+
162+
```json
163+
{
164+
"AppConfig": {
165+
"DefaultPriority": 3,
166+
"DateFormat": "yyyy-MM-dd",
167+
"ShowCompletedByDefault": false
168+
}
169+
}
170+
```
171+
172+
## Export/Backup
173+
174+
### Quick Backup
175+
176+
```bash
177+
# Backup tasks
178+
cp tasks.json tasks-backup-$(date +%Y%m%d).json
179+
180+
# Or export
181+
taskman export --format json --output backup/tasks-$(date +%Y%m%d).json
182+
```
183+
184+
### Share with Team
185+
186+
```bash
187+
# Export to readable format
188+
taskman export --format markdown --output team-tasks.md
189+
190+
# Or CSV for spreadsheet
191+
taskman export --format csv --output tasks.csv
192+
```
193+
194+
## Docker Usage
195+
196+
### Run Once
197+
198+
```bash
199+
docker run -v $(pwd)/data:/app/data taskmanager add "Docker task" --priority 5
200+
docker run -v $(pwd)/data:/app/data taskmanager list
201+
```
202+
203+
### Interactive Session
204+
205+
```bash
206+
docker-compose up -d taskmanager-dev
207+
docker exec -it taskmanager-dev bash
208+
# Now use taskman commands inside container
209+
```
210+
211+
## Development Setup
212+
213+
### VSCode
214+
215+
1. Open folder in VSCode
216+
2. Install recommended extensions (prompt will appear)
217+
3. Press `F5` to build and debug
218+
4. Use `Ctrl+Shift+B` to run build tasks
219+
220+
### Building
221+
222+
```bash
223+
# Build
224+
./build.sh build
225+
226+
# Run tests
227+
./build.sh test
228+
229+
# Run with arguments
230+
./build.sh run -- list --pending
231+
232+
# Publish for all platforms
233+
./build.sh publish
234+
```
235+
236+
## Keyboard Shortcuts (if running in terminal)
237+
238+
- `Ctrl+C` - Cancel current command
239+
- `Up/Down Arrow` - Navigate command history
240+
- `Tab` - Auto-complete (if shell supports)
241+
242+
## Getting Help
243+
244+
```bash
245+
# General help
246+
taskman help
247+
248+
# Check version
249+
taskman --version
250+
251+
# View examples
252+
cat examples/EXAMPLES.md
253+
```
254+
255+
## Tips
256+
257+
1. **Start Simple**: Begin with just `add` and `list`
258+
2. **Use Tags**: They make filtering much easier
259+
3. **Set Priorities**: Helps focus on what matters
260+
4. **Regular Review**: Check and update tasks daily
261+
5. **Export Often**: Backup your tasks regularly
262+
6. **Search First**: Use `search` before scrolling through lists
263+
264+
## Next Steps
265+
266+
- Read [EXAMPLES.md](examples/EXAMPLES.md) for detailed scenarios
267+
- Check [CONTRIBUTING.md](CONTRIBUTING.md) to contribute
268+
- Review [docs/ARCHITECTURE.md](docs/ARCHITECTURE.md) to understand the code
269+
- See [CHANGELOG.md](CHANGELOG.md) for version history
270+
271+
## Troubleshooting
272+
273+
**Tasks not saving?**
274+
```bash
275+
# Check permissions
276+
ls -la tasks.json
277+
```
278+
279+
**Command not found?**
280+
```bash
281+
# Use full path or build script
282+
./build.sh run -- list
283+
# Or
284+
dotnet run --project src/TaskManager.CLI -- list
285+
```
286+
287+
**Need to reset?**
288+
```bash
289+
# Backup first!
290+
cp tasks.json tasks-backup.json
291+
# Remove tasks file
292+
rm tasks.json
293+
# Start fresh
294+
taskman add "First task"
295+
```
296+
297+
---
298+
299+
**Ready to get productive? Start with:**
300+
301+
```bash
302+
taskman add "Complete first task" --priority 5 --tags getting-started
303+
taskman list
304+
taskman complete 1
305+
taskman stats
306+
```
307+
308+
Happy task managing! 🚀

0 commit comments

Comments
 (0)