A productivity CLI tool for developers
Project description
๐ฏ FocusCLI
A minimal productivity tool for developers who want to manage tasks and stay focused without leaving the terminal.
โจ Features
- Task Management: Add, list, complete, and delete tasks with a clean interface
- Pomodoro Timer: Built-in focus timer with live progress tracking
- Beautiful UI: Powered by Rich library for colorful tables and progress bars
- Simple Storage: Tasks saved locally in JSON format
- Zero Config: Works right out of the box
๐ Installation
Quick Install (Recommended)
Install directly from PyPI:
pip install focuscli
From Source
Clone the repository and install:
git clone https://github.com/eneswritescode/focuscli.git
cd focuscli
pip install -e .
Requirements
- Python 3.7 or higher
- Dependencies will be installed automatically
๐ฌ Quick Start
# Install
pip install focuscli
# Add some tasks
focuscli add "Review pull requests"
focuscli add "Write documentation"
focuscli add "Fix bug in login"
# See your tasks
focuscli list
# Complete a task
focuscli complete 1
# Start a 25-minute focus session
focuscli timer
๐ Usage
Add a task
focuscli add "Write documentation"
focuscli add "Fix bug in login page"
List all tasks
focuscli list
Output example:
โโโโโโโโโโณโโโโโโโโโโโโโโโโโโโโโโโณโโโโโโโโโโโโ
โ ID โ Task โ Status โ
โกโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฉ
โ 1 โ Write documentation โ โ Pending โ
โ 2 โ Fix bug in login pageโ โ Pending โ
โโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโ
Complete a task
focuscli complete 1
Delete a task
focuscli delete 2
Start a focus timer
# Default 25-minute session
focuscli timer
# Custom duration (in minutes)
focuscli timer 45
Windows Note: If focuscli command is not found after installation, you may need to add Python Scripts to your PATH or use:
python -m focuscli.main <command>
๐ ๏ธ Development
Setup development environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
pip install -r requirements.txt
Run locally
python -m focuscli.main add "Test task"
python -m focuscli.main list
๐ Project Structure
focuscli/
โโโ focuscli/
โ โโโ __init__.py
โ โโโ main.py # CLI entry point
โ โโโ tasks.py # Task management logic
โ โโโ timer.py # Pomodoro timer
โ โโโ storage.py # JSON file handling
โโโ requirements.txt
โโโ setup.py
โโโ README.md
๐ค Contributing
Contributions are welcome! Here's how you can help:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
๐ก Ideas for Future Features
- Task priorities and tags
- Weekly/monthly reports
- Export tasks to different formats
- Break reminders after focus sessions
- Integration with calendar apps
๐ License
MIT License - feel free to use this project however you want.
๏ฟฝ Links
- PyPI: https://pypi.org/project/focuscli/
- GitHub: https://github.com/eneswritescode/focuscli
- Issues: https://github.com/eneswritescode/focuscli/issues
๐ Acknowledgments
Built with:
Made with โ by developers, for developers
Star this repo if you find it helpful! โญ
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file focuscli-0.1.0.tar.gz.
File metadata
- Download URL: focuscli-0.1.0.tar.gz
- Upload date:
- Size: 6.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cc4005fc78204b2c76f092ba3f5739c6fc6b0bd0980071af062f36b3e3724658
|
|
| MD5 |
4f078344446043d7b3a2cbc0c9d019cb
|
|
| BLAKE2b-256 |
16ac42bf8e9be7aa536b4657e9ce129becf32af469f31bf49390987b718d320d
|
File details
Details for the file focuscli-0.1.0-py3-none-any.whl.
File metadata
- Download URL: focuscli-0.1.0-py3-none-any.whl
- Upload date:
- Size: 7.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
172d17ed8d2a310ac4400a53bd482d74e42cac6171790626cdb341b91177e0da
|
|
| MD5 |
bb6dcec89c319fd6a9074f62b25bc0ff
|
|
| BLAKE2b-256 |
857d5ad03d4e81b99d9213576715e7d16a071ee591dddf6acd7f12fef2fdbcfe
|