A CLI and web-based tool for tracking daily work activities and generating reports
Project description
FastRep 📊
A powerful CLI and web-based tool for tracking daily work activities and generating professional reports.
Features ✨
- Easy Logging: Quickly log your daily work activities with project names and descriptions
- Automatic Reports: Generate weekly, bi-weekly, and monthly reports instantly
- Dual Interface: Use either the command-line interface or the professional web UI
- SQLite Database: All data stored locally in a lightweight SQLite database
- Project Tracking: Automatically organize logs by project
- Flexible Dating: Log entries for any date, not just today
- Easy Search: View and filter logs by date range
- Data Management: Delete individual entries or clear entire database
Installation
From PyPI (Recommended)
pip install fastrep
From Source
git clone https://github.com/hissain/fastrep.git
cd fastrep
pip install -e .
Quick Start
Command Line Interface
# Add a work log entry
fastrep log -p "Project Alpha" -d "Implemented user authentication"
# Add a log for a specific date
fastrep log -p "Project Beta" -d "Fixed bug #123" --date 2024-11-15
# View weekly report
fastrep view --mode weekly
# View bi-weekly report
fastrep view --mode biweekly
# View monthly report
fastrep view --mode monthly
# List all entries
fastrep list
# View all projects
fastrep projects
# Delete a specific entry
fastrep delete --id 5
# Clear all data (with confirmation)
fastrep clear
Web Interface
Launch the web UI:
fastrep-ui
The web interface will automatically open in your default browser at http://127.0.0.1:5000.
Usage Examples
Daily Workflow
# Morning: Log yesterday's work
fastrep log -p "API Development" -d "Completed endpoint for user profiles" --date 2024-11-20
# End of day: Log today's work
fastrep log -p "API Development" -d "Started work on authentication middleware"
fastrep log -p "Documentation" -d "Updated API documentation"
# Friday: Generate weekly report
fastrep view --mode weekly
Report Output Example
Report Period: 11/16 - 11/22
============================================================
Project: API Development
------------------------------------------------------------
* 11/21 - Started work on authentication middleware
* 11/20 - Completed endpoint for user profiles
* 11/18 - Fixed performance issues in database queries
Project: Documentation
------------------------------------------------------------
* 11/21 - Updated API documentation
* 11/19 - Created user guide for new features
CLI Commands Reference
fastrep log
Add a new work log entry.
Options:
-p, --project TEXT: Project name (required)-d, --description TEXT: Work description (required)-dt, --date TEXT: Date in YYYY-MM-DD format (optional, defaults to today)
fastrep view
View logs and generate reports.
Options:
-m, --mode [weekly|biweekly|monthly]: Report period (default: weekly)-s, --start TEXT: Custom start date (YYYY-MM-DD)-e, --end TEXT: Custom end date (YYYY-MM-DD)
fastrep list
List all log entries with their IDs.
fastrep projects
List all unique projects.
fastrep delete
Delete a specific log entry.
Options:
-i, --id INTEGER: Log entry ID to delete (required)-y, --confirm: Skip confirmation prompt
fastrep clear
Clear all log entries from the database.
Options:
-y, --confirm: Skip confirmation prompt
Web UI Features
The web interface provides:
- Dashboard: Add new logs with autocomplete for project names
- Recent Logs Table: View, search, and delete entries
- Report Generation: One-click weekly, bi-weekly, and monthly reports
- Copy to Clipboard: Easy report copying for emails/documents
- Settings: Database management and configuration
Database Location
Logs are stored in: ~/.fastrep/fastrep.db
Both CLI and web UI use the same database, so your data is always in sync.
Development
Setup Development Environment
git clone https://github.com/hissain/fastrep.git
cd fastrep
pip install -e .
Project Structure
fastrep/
├── fastrep/
│ ├── __init__.py
│ ├── cli.py # CLI commands
│ ├── database.py # Database operations
│ ├── models.py # Data models
│ ├── report_generator.py # Report generation logic
│ └── ui/
│ ├── app.py # Flask application
│ ├── templates/ # HTML templates
│ └── static/ # CSS files
├── tests/
├── setup.py
└── README.md
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
License
This project is licensed under the MIT License - see the LICENSE file for details.
Author
Md. Sazzad Hissain Khan
- GitHub: @hissain
- Email: hissain.khan@gmail.com
Acknowledgments
Support
If you encounter any issues or have questions:
- Open an issue on GitHub
- Check existing issues for solutions
Star ⭐ this repository 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 fastrep-1.0.2.tar.gz.
File metadata
- Download URL: fastrep-1.0.2.tar.gz
- Upload date:
- Size: 16.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2f7310ce25d896774b18a516ad637b89c74563983867db60b681aed44b0a41ed
|
|
| MD5 |
67612d3eea3f8a46bf626694bcade03a
|
|
| BLAKE2b-256 |
7d73982e9c8b10365c6eae1c54bb7129a5954683765532cf1e231e32374fe509
|
File details
Details for the file fastrep-1.0.2-py3-none-any.whl.
File metadata
- Download URL: fastrep-1.0.2-py3-none-any.whl
- Upload date:
- Size: 17.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f5724a3dd075c91e54efa00c6a2d2f81638558dd4ff811f784c450d80e1c6bab
|
|
| MD5 |
8059f278ce8a045a561d1742d05b20d5
|
|
| BLAKE2b-256 |
c1d70d33661ad79377c21176bcf71b76e09719a09c3c1f1ce73bebe869b8b188
|