Skip to main content

A CLI app for managing notes and finances using LLMs.

Project description


Logo

WhatsMyNote

An intelligent, fully conversational financial memory system. Control your lending, borrowing, expenses, income, and transfers through pure natural language via CLI.

View on PyPI · Report Bug · Request Feature

PyPI Version License: MIT Python Versions Forks Stars


📑 Table of Contents


🌟 About The Project

Tracking finances shouldn't require complex spreadsheets or clunky UIs. WhatsMyNote brings the power of state-of-the-art Large Language Models (LLMs) directly to your terminal. Just type what happened naturally, and the AI will extract the financial intent, validate it, and persist it to a database securely.

🏗 Built With

  • Python for core logic
  • LangGraph & LangChain for robust stateful intent routing and HITL (Human-in-the-Loop) flows
  • Pydantic for extraction validation
  • SQLAlchemy & PostgreSQL for data persistence
  • Groq LLMs (Llama 3) for lightning-fast, high-quality inference
  • Supabase for secure Authentication

🚀 Getting Started

Prerequisites

You need Python 3.11 or higher installed on your machine.

Installation

The recommended way to install WhatsMyNote is directly from PyPI.

pip install whatsmynote

That's it!


💡 Usage

After installing, simply type whatsmynote in your terminal to start the conversational interface!

whatsmynote

On your very first run, it will automatically prompt you for your GROQ_API_KEY and securely save it. It will also help you set up your initial budgets and accounts.

Example Commands you can type:

  • "I spent $15 on coffee today"
  • "My friend John borrowed $50 from me"
  • "Show me my expenses for this month"
  • "Transfer $100 from Checking to Savings"

🛠 Local Development (For Contributors)

If you'd like to contribute to the codebase or run the backend completely locally, you'll need uv installed.

  1. Clone the repo:
    git clone https://github.com/SarJ2004/WhatsMyNote.git
    
  2. Set up your environment variables:
    cp .env.sample .env
    
    Fill in your database and API keys in .env.
  3. Install all dependencies (including backend AI and DB libraries):
    uv sync
    
  4. Run the app:
    python whatsmynote/app/chat.py
    

🗺 Roadmap

See the open issues for a list of proposed features and known issues. See CHANGELOG.md for version history.


📄 License

Distributed under the MIT License. See LICENSE for more information.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

whatsmynote-0.1.2.tar.gz (15.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

whatsmynote-0.1.2-py3-none-any.whl (15.8 kB view details)

Uploaded Python 3

File details

Details for the file whatsmynote-0.1.2.tar.gz.

File metadata

  • Download URL: whatsmynote-0.1.2.tar.gz
  • Upload date:
  • Size: 15.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for whatsmynote-0.1.2.tar.gz
Algorithm Hash digest
SHA256 5aaedf0eed7460a900b22ed51bd679c8ed8c9abe939ff563b049499c0c5776ef
MD5 210bea7c6f1f1fbeb563fbc38c6b9588
BLAKE2b-256 281766fe98bff027f12ec927a4a47b6fd819dd0c35c66c4f084c64d4fc7f7ebe

See more details on using hashes here.

Provenance

The following attestation bundles were made for whatsmynote-0.1.2.tar.gz:

Publisher: release.yml on SarJ2004/WhatsMyNote

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file whatsmynote-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: whatsmynote-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 15.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for whatsmynote-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 3aa693b5d707b78c3cee9730b1dc37a40cfef0490b3562f82baa761f74c4df08
MD5 71147ec865b443bdbf3587170e8e2fc8
BLAKE2b-256 3abb163057cd0b58ee06bf88cd8dbce8cfc3b04681b923bfdaaffa0749dfd7b0

See more details on using hashes here.

Provenance

The following attestation bundles were made for whatsmynote-0.1.2-py3-none-any.whl:

Publisher: release.yml on SarJ2004/WhatsMyNote

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page