A CLI tool for adding and reviewing notes
Project description
NOTES CLI App
A CLI tool to add, review, and manage notes and todos.
Semantic Search & Vector Database
This uses a vector database (ChromaDB) and a machine learning model (MiniLM) to enable semantic search:
- When you add a note, its meaning is converted into a vector (embedding) and stored in ChromaDB.
- When you use semantic search, your query is also converted to a vector, and the app finds notes with similar meaning (not just exact words).
- If no semantic match is found, the app automatically falls back to a keyword search for robust results.
- The vector database is stored locally in the
.chroma_dbdirectory (auto-created). - Find notes by meaning, not just keywords (e.g., searching "remind mom" can find "call mom").
Installation
- Clone the repository:
git clone <repo name> cd review_and_append
- Create and activate a virtual environment (recommended):
python3 -m venv venv source venv/bin/activate
- Install dependencies and the CLI tool:
pip install -e .
Usage
Command Line
Add a note:
notes "Remember to call mom"
Add a todo:
notes "Buy groceries" --tag todo
View today's notes:
notes today
View all todos:
notes todo
View notes for a period:
notes "this week"
notes "15 days"
notes "a month"
notes all
Interactive Menu
Just run:
notes
And use the arrow keys to select actions:
- Add TODO: Add a new todo
- Add Note: Add a regular note
- View Notes: See all notes (except todos) in a beautiful table
- View TODOs: See all todos in a beautiful table
- Semantic Search: Find notes by meaning, with keyword fallback if no semantic match
- Delete All TODOs: Delete all todos (with confirmation)
- Delete All Notes: Delete all notes (with confirmation)
- Other: Run a custom SQL query on your notes database
- Exit: Quit the app
Data Storage
- Notes are stored in a local SQLite database file:
notes.db
Uninstall
pip uninstall notes-app
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 notes_app_cli-0.1.1.tar.gz.
File metadata
- Download URL: notes_app_cli-0.1.1.tar.gz
- Upload date:
- Size: 6.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
84cf3638d3be224baafbe0b64ae15bd501e4017b224ca4261bdd4841a5b4a290
|
|
| MD5 |
49abb15412ba785b65bc99ce8bf0ccbd
|
|
| BLAKE2b-256 |
b447c8ab67dcbf927ac851b0bc2333b1eaaa4275de68afa6e935f33cdc6bf881
|
File details
Details for the file notes_app_cli-0.1.1-py3-none-any.whl.
File metadata
- Download URL: notes_app_cli-0.1.1-py3-none-any.whl
- Upload date:
- Size: 7.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0f581188c2a37b7e552d65464a322659536c9543eced2826bd83dc3d9ed10cb9
|
|
| MD5 |
557b1668bcd785878e3e4ca70ec24f4b
|
|
| BLAKE2b-256 |
a6e00c9ba32bc12484c4f622b96d14a4700b3e385653f61eb1265b519b12fbde
|