Google Tasks CLI Development
This directory contains the source code for the Google Tasks CLI application.
For general usage, we recommend installing the package from PyPI:
pip install gtasks-cli
See the main project README.md for more information on installation and usage.
Features
- Full Google Tasks API integration with OAuth2 authentication
- Advanced filtering and search capabilities
- Context management for different task views
- Reporting and analytics
- Time tracking and Pomodoro technique integration
- Recurring tasks and dependencies
- Offline mode with synchronization
- Import/export functionality
- Optimized Advanced Sync for improved performance
- Multi-account support
- Interactive mode with keyboard navigation
- Task deduplication
- Rich terminal UI with color coding
Installation for Development
To set up the development environment:
# Clone the repository
git clone <repository-url>
cd gtasks_automation/gtasks_cli
# Create and activate a virtual environment
python3 -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install dependencies
pip install -r requirements.txt
# Install in development mode
pip install -e .
Post-Installation Setup
After installing the package, we strongly recommend running the setup assistant to configure your environment:
python -m gtasks_cli.setup_assistant
The setup assistant will:
- Verify that gtasks-cli is properly installed
- Create the configuration directory (
~/.gtasks) - Set up default configuration values
- Guide you through Google authentication setup
- Test basic functionality
For more information, see SETUP_ASSISTANT.md.
Running Tests
Various test scripts are available in the root directory:
# Run a simple sync test
python simple_sync_test.py
# Run comprehensive duplication tests
python comprehensive_dup_test.py
Usage During Development
During development, you can run the CLI directly:
python -m gtasks_cli.main --help
Common development commands:
# Enter interactive mode for a rich, keyboard-driven interface
python -m gtasks_cli.main interactive
# List tasks
python -m gtasks_cli.main list
# Add a new task
python -m gtasks_cli.main add "Buy groceries" --due "tomorrow"
# Mark task as done
python -m gtasks_cli.main done <task-id>
# Sync with Google Tasks
python -m gtasks_cli.main sync
Production Installation
For production use, install the package from PyPI:
pip install gtasks-cli
Then use the gtasks command directly:
gtasks --help
TODO
- auto-sync on update/add/delete
Development
This project follows a modular architecture with clear separation of concerns:
- CLI Layer: Command-line interface using Click framework
- Core Layer: Business logic for task and tasklist management
- Integration Layer: Google Tasks API integration and authentication
- Storage Layer: Local caching and configuration management
- Reporting Layer: Analytics and reporting functionality
License
MIT
Metadata
Release files for gtasks-cli 0.1.6
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| gtasks_cli-0.1.6.tar.gz | 153.8 kB | Without provenance | Details for gtasks_cli-0.1.6.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| gtasks_cli-0.1.6-py3-none-any.whl | Python 3 | none | any | Details for gtasks_cli-0.1.6-py3-none-any.whl |
Total release size: 328.3 kB
Release files / gtasks_cli-0.1.6.tar.gz
| Download URL | gtasks_cli-0.1.6.tar.gz |
|---|---|
| Size | 153.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d83d2d14672651ea9ec311f250f45bda2b2d6ef9a0cdfcdc0b7e5e33c8a94a55
|
|
BLAKE2b-256 checksum How to use checksums |
962bc79897cc87ba08866483b0d617f5d53c05081f803f0f49be15f0520c44da
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.0
|
Release files / gtasks_cli-0.1.6-py3-none-any.whl
| Download URL | gtasks_cli-0.1.6-py3-none-any.whl |
|---|---|
| Size | 174.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
27e9b5bda669dab8d67e4caf2ca882ac6b7edf84f4705216772895bd440b940e
|
|
BLAKE2b-256 checksum How to use checksums |
93eaa6edd5fbf282f11fe4751a91a30416aa5245201d1d1b137e2a72c0efc607
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.0
|
Security for gtasks-cli 0.1.6
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.