Updated README.md

This commit is contained in:
2025-11-22 16:54:14 +01:00
parent 1a0c37d642
commit f634993637

290
README.md
View File

@@ -1,254 +1,110 @@
# ⚡ Focus Task
A powerful task management and focus timer plugin for [Obsidian](https://obsidian.md), heavily inspired by [Blitzit](https://www.blitzit.app/).
A productivity plugin for Obsidian that combines task management with focused time tracking, heavily inspired by [Blitzit](https://www.blitzit.app/).
![Focus Task Banner](https://img.shields.io/badge/Obsidian-Plugin-7c3aed?style=for-the-badge&logo=obsidian&logoColor=white)
![License](https://img.shields.io/badge/License-MIT-green?style=for-the-badge)
![Version](https://img.shields.io/badge/Version-1.0.2-blue?style=for-the-badge)
## Features
## 🎯 Overview
Focus Task brings the power of time-boxed task management directly into your Obsidian vault. Plan your day, track time with the Pomodoro technique, and crush your tasks with satisfying checkoffs - all without leaving your notes.
### Why Focus Task?
- **Stay in Flow**: No need to switch between apps - manage tasks where you take notes
- **Time Awareness**: Know exactly how long tasks take vs. your estimates
- **Pomodoro Built-in**: Work in focused sprints with automatic break reminders
- **Satisfying Feedback**: Celebratory messages and sounds when you complete tasks
- **Visual Progress**: See your daily progress with stats and streaks
## ✨ Features
### 📋 Task Management
### 🎯 Task Management
- Create tasks with time estimates
- Organize tasks into customizable lists (Work, Personal, Learning, etc.)
- Add notes and details to tasks
- Filter tasks by list, today's tasks, or completed items
- Drag-and-drop task reordering
- Track actual time spent vs. estimated time
- Filter tasks by list, status, or date
### ⏱️ Dual Timer Modes
#### Pomodoro Timer
### 🍅 Pomodoro Timer
- Built-in Pomodoro technique support
- Configurable work sessions (default: 25 minutes)
- Short breaks (default: 5 minutes)
- Long breaks after a set number of pomodoros (default: 15 minutes every 4 pomodoros)
- Auto-start break option
- Visual countdown with progress bar
- Short and long breaks
- Auto-start breaks option
- Visual progress indicator
#### Stopwatch Mode
- Free-form time tracking
- Alerts when you exceed your estimate
- Track actual time vs. estimated time
### ⏱️ Stopwatch Mode
- Free-form time tracking without Pomodoro constraints
- Alerts when exceeding time estimates
### 📊 Progress Tracking
- **Daily Stats**: See tasks completed, focus time, and more
- **Streak Counter**: Build momentum with consecutive productive days
- **Time Comparison**: Compare estimated vs. actual time to improve planning
- **Pomodoro Count**: Track total pomodoros completed
### 📊 Statistics
- Daily completed tasks counter
- Total focus time tracking
- Streak tracking for consecutive productive days
- Pomodoro completion count
### 🎨 User Experience
- **Status Bar Timer**: timer that stays visible while you work
- **Celebration Messages**: Fun, randomized messages when you complete tasks
- **Sound Notifications**: Audio alerts for timer completion and task completion
- **Keyboard Shortcuts**: Quick access to common actions
- **Responsive Design**: Works great in any panel size
### 📝 Daily Note Integration
- Automatically log completed tasks to your daily note
- Customizable date format and section heading
- Tracks time spent vs. estimated time
## 🚀 Installation
### 🎉 Celebrations & Feedback
- Celebration messages on task completion
- Sound notifications (optional)
- Visual feedback for early/late completions
### From Obsidian Community Plugins (Coming Soon)
1. Open Obsidian Settings
2. Go to Community Plugins
3. Search for "Focus Task"
4. Click Install, then Enable
## Installation
### Manual Installation
1. Download the latest release from the [releases page](https://git.cribdev.com/crib/focus-task/releases)
2. Extract the files to your vault's `.obsidian/plugins/focus-task/` folder
1. Download the latest release from the releases page
2. Extract the files into your vault's `.obsidian/plugins/focus-task/` folder
3. Reload Obsidian
4. Enable the plugin in Settings → Community Plugins
### Building from Source
```bash
# Clone the repository
git clone https://git.cribdev.com/crib/focus-task.git
cd focus-task
### From Source
1. Clone this repository into your vault's `.obsidian/plugins/` folder
2. Run `npm install` to install dependencies
3. Run `npm run build` to compile the plugin
4. Reload Obsidian and enable the plugin
# Install dependencies
npm install
## Usage
# Build the plugin
npm run build
### Opening Focus Task
- Click the ⚡ icon in the ribbon (left sidebar)
- Use the command palette: "Open Focus Task Panel"
# Copy to your vault
cp main.js manifest.json styles.css /path/to/your/vault/.obsidian/plugins/focus-task/
```
### Adding Tasks
- Click "+ Add Task" in the panel
- Use the command palette: "Quick Add Task"
- Set a time estimate and assign to a list
## 📖 Usage
### Getting Started
1. **Open Focus Task**: Click the ⚡ icon in the ribbon or use the command palette (`Ctrl/Cmd + P` → "Open Focus Task Panel")
2. **Add a Task**: Click "+ Add Task" and fill in:
- Task description
- Time estimate
- List category
3. **Start Focusing**: Click ▶ on any task to start a Pomodoro session, or ⏱ for stopwatch mode
4. **Complete Tasks**: Check off tasks when done and enjoy the celebration!
### Starting a Focus Session
- **Pomodoro Mode (▶)**: Click the play button on a task to start a timed Pomodoro session
- **Stopwatch Mode (⏱)**: Click the stopwatch icon to track time freely
### Keyboard Shortcuts
You can assign hotkeys to these commands in Settings → Hotkeys:
- `Focus Task: Open Focus Task Panel`
- `Focus Task: Quick Add Task`
- `Focus Task: Toggle Timer (Play/Pause)`
- `Focus Task: Complete Current Task`
- `Focus Task: Start Focus Mode on Next Task`
| Action | Command |
|--------|---------|
| Open Panel | `Ctrl/Cmd + P` → "Open Focus Task Panel" |
| Quick Add Task | `Ctrl/Cmd + P` → "Quick Add Task" |
| Toggle Timer | `Ctrl/Cmd + P` → "Toggle Timer" |
| Complete Task | `Ctrl/Cmd + P` → "Complete Current Task" |
| Start Focus | `Ctrl/Cmd + P` → "Start Focus Mode on Next Task" |
### Timer Modes Explained
#### 🍅 Pomodoro Mode (▶ button)
Best for: Maintaining focus on challenging tasks
1. Timer counts down from your configured work duration
2. When time's up, you'll get a notification
3. Take a break (short or long, based on your settings)
4. Repeat until the task is complete
#### ⏱️ Stopwatch Mode (⏱ button)
Best for: Tracking time on open-ended tasks
1. Timer counts up from zero
2. Get alerted when you exceed your estimate
3. Stop whenever the task is complete
4. See exactly how long the task took
## ⚙️ Settings
## Settings
### Pomodoro Timer
| Setting | Description | Default |
|---------|-------------|---------|
| Work Duration | Length of each work session | 25 min |
| Short Break | Length of short breaks | 5 min |
| Long Break | Length of long breaks | 15 min |
| Long Break Interval | Pomodoros before a long break | 4 |
| Auto-start Breaks | Automatically start break timer | Off |
- **Work Duration**: Length of work sessions (5-60 minutes)
- **Short Break**: Length of short breaks (1-15 minutes)
- **Long Break**: Length of long breaks (5-30 minutes)
- **Long Break Interval**: Pomodoros before a long break
### General
| Setting | Description | Default |
|---------|-------------|---------|
| Default Time Estimate | Default estimate for new tasks | 30 min |
| Enable Sounds | Play completion/alert sounds | On |
| Enable Celebrations | Show celebration messages | On |
| Show Floating Timer | Display draggable timer widget | On |
- **Default Time Estimate**: Default estimate for new tasks
- **Enable Sounds**: Toggle sound notifications
- **Enable Celebrations**: Toggle celebration messages
### Daily Note Integration
- **Log completed tasks**: Enable/disable daily note logging
- **Filename format**: Set your daily note naming convention (YYYY-MM-DD)
- **Section heading**: Customize the heading for logged tasks
### Lists
Customize your task lists with:
- Custom names
- Emoji icons
- Color coding
- Create custom lists with names, icons, and colors
- Default lists: Work, Personal, Learning
Default lists: Work 💼, Personal 🏠, Learning 📚
## Credits
## 🎨 Customization
This plugin is heavily inspired by [Blitzit](https://www.blitzit.app/), a fantastic productivity app. Focus Task brings similar functionality directly into Obsidian.
### Adding Custom Lists
1. Go to Settings → Focus Task → Lists
2. Click "+ Add List"
3. Set the name, emoji, and color
4. Click Save
## License
### Theming
Focus Task respects your Obsidian theme and adapts to both light and dark modes automatically.
MIT License - see [LICENSE](LICENSE) for details.
## 📁 Project Structure
## Support
```
focus-task/
├── src/
│ ├── main.ts # Main plugin class
│ ├── types.ts # TypeScript interfaces
│ ├── view.ts # Main UI view
│ └── modals.ts # Task modals
├── styles.css # Plugin styles
├── manifest.json # Obsidian plugin manifest
├── package.json # npm configuration
├── tsconfig.json # TypeScript config
├── esbuild.config.mjs # Build configuration
└── README.md # This file
```
## 🙏 Inspiration & Credits
This plugin is **heavily inspired by [Blitzit](https://www.blitzit.app/)**, a fantastic standalone productivity app that combines task management with focused time tracking.
Blitzit's approach to productivity resonated with me:
- Simple, focused interface
- Time estimation and tracking
- Pomodoro technique integration
- Satisfying task completion experience
- Progress insights
I wanted to bring this experience directly into Obsidian, where I already manage my notes and knowledge. Focus Task is my attempt to capture the essence of what makes Blitzit great while leveraging Obsidian's powerful ecosystem.
**If you're looking for a dedicated productivity app, I highly recommend checking out [Blitzit](https://www.blitzit.app/)!**
## 🤝 Contributing
Contributions are welcome! Feel free to:
1. Fork the repository
2. Create a feature branch (`git checkout -b feature/amazing-feature`)
3. Commit your changes (`git commit -m 'Add amazing feature'`)
4. Push to the branch (`git push origin feature/amazing-feature`)
5. Open a Pull Request
### Development Setup
```bash
# Clone the repo
git clone https://git.cribdev.com/crib/focus-task.git
cd focus-task
# Install dependencies
npm install
# Start development build (watches for changes)
npm run dev
# Create symlink to your test vault
ln -s $(pwd) /path/to/vault/.obsidian/plugins/focus-task
```
## 📝 Roadmap
- [ ] Integration with Obsidian Tasks plugin
- [ ] Calendar view for scheduled tasks
- [ ] Weekly/Monthly reports
- [ ] Task templates
- [ ] Sync with external task managers
- [ ] Mobile optimizations
- [ ] Task dependencies
- [ ] Time blocking in daily notes
## 📜 License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
## 🔗 Links
- **Repository**: [https://git.cribdev.com/crib/focus-task](https://git.cribdev.com/crib/focus-task)
- **Issues**: [https://git.cribdev.com/crib/focus-task/issues](https://git.cribdev.com/crib/focus-task/issues)
- **Inspiration**: [Blitzit App](https://www.blitzit.app/)
---
<p align="center">
Made with ❤️ for the Obsidian community
<br>
Inspired by <a href="https://www.blitzit.app/">Blitzit</a> ⚡
</p>
- [Report Issues](https://git.cribdev.com/crib/focus-task/issues)
- [Source Code](https://git.cribdev.com/crib/focus-task)