A simple CLI tool for managing notes
Project description
Notes CLI
A simple and intuitive command-line tool for managing your notes efficiently. Built with Python and designed for ease of use.
✨ Features
- 📝 Create and manage notes from the command line
- 🔍 Search and organize your notes
- 💾 Persistent storage of your notes
- 🎨 Beautiful terminal interface with Rich formatting
- ⚡ Fast and lightweight
🚀 Quick Start (No Installation Required!)
You can run this tool directly without installing it using pipx:
pipx run ankita-notes-cli
This will download and run the latest version of the CLI tool without cluttering your system with permanent installations.
Example Usage
# Run the CLI
pipx run ankita-notes-cli
# Add a new note
pipx run ankita-notes-cli add --title "Remember to buy groceries"
# List all notes
pipx run ankita-notes-cli list
# Search notes by id
pipx run ankita-notes-cli get-one-note 1
📦 Alternative Installation Methods
Using pipx (Recommended)
If you want to install it permanently:
pipx install ankita-notes-cli
ankita-notes-cli --help
Using pip
pip install ankita-notes-cli
ankita-notes-cli --help
🛠️ Usage
ankita-notes-cli [COMMAND] [OPTIONS]
Available Commands
| Command | Description | Example |
|---|---|---|
add |
Add a new note | ankita-notes-cli add "My note content" |
list |
List all notes | ankita-notes-cli list |
get-one-note |
Search notes by id | ankita-notes-cli get-one-note 1 |
delete |
Delete a note | ankita-notes-cli delete 1 |
edit |
Edit an existing note | ankita-notes-cli edit 1 |
help |
Show help information | ankita-notes-cli --help |
Examples
# Add a note
ankita-notes-cli add "Meeting with team at 3 PM"
# List all notes with formatting
ankita-notes-cli list
# Search for notes containing "meeting"
ankita-notes-cli get-one-note 1
# Delete note with ID 1
ankita-notes-cli delete 1
🔧 Requirements
- Python 3.6 or higher
- No additional dependencies needed when using
pipx run
🏗️ Development
Local Development Setup
- Clone the repository:
git clone https://github.com/ankita311/notes-cli.git
cd notes-cli
- Create a virtual environment:
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
- Install in development mode:
pip install -e .
- Run the CLI:
ankita-notes-cli --help
Testing with pipx
To test your local changes with pipx:
pipx run /path/to/your/notes-cli
📝 Dependencies
This project uses the following libraries:
- FastAPI (0.115.12) - For potential web interface features
- httpx (0.28.1) - For HTTP requests
- Pydantic (2.11.4) - For data validation
- Rich (14.0.0) - For beautiful terminal output
- Typer (0.15.4) - For building the CLI interface
🤝 Contributing
Contributions are welcome! Here's how you can help:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Make your changes
- Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
Development Guidelines
- Follow PEP 8 style guidelines
- Add tests for new features
- Update documentation as needed
- Ensure all tests pass before submitting
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
🐛 Bug Reports & Feature Requests
If you encounter any bugs or have feature requests, please create an issue on GitHub.
📧 Contact
Ankita - ankita.av.934@gmail.com
Project Link: https://github.com/ankita311/notes-cli
🙏 Acknowledgments
- Thanks to the Python community for the amazing libraries
- Built with ❤️ using Python, Typer, and Rich
⭐ If you find this tool useful, please consider giving it a star on GitHub!
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 ankita_notes_cli-0.1.2.tar.gz.
File metadata
- Download URL: ankita_notes_cli-0.1.2.tar.gz
- Upload date:
- Size: 4.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dcf96b30e0132a6af8f79bce6d80ed078107b3cb2d23618b07c23cf7a33add1a
|
|
| MD5 |
664ff0084a985319fbd5d52fc590e72c
|
|
| BLAKE2b-256 |
3a4e4a40708a6a8fa23c826dc314c9b9f7150fed3abcb5820b815e3456e8cee2
|
File details
Details for the file ankita_notes_cli-0.1.2-py3-none-any.whl.
File metadata
- Download URL: ankita_notes_cli-0.1.2-py3-none-any.whl
- Upload date:
- Size: 5.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f4dafd33a18ac540f708913bbd5e86a713812b34d401c3afa74da0a3f6644ce1
|
|
| MD5 |
3beddc29ca6d50c0fbbca51dede694af
|
|
| BLAKE2b-256 |
02afb2c9e1a2782ef96925d2050c914429f6b63674e7d46a36e2b55d8c7edb8a
|