A simple Python-based personal expense tracker that helps you manage and track your daily expenses. This project uses SQLite for data storage and provides a command-line interface for adding, viewing, and managing expenses.
- Add new expenses with details (amount, category, date, description)
- Simple and easy-to-use CLI
- Data stored locally using SQLite
Personal-Expense-Tracker-Python/
├── db.py # Database connection and operations
├── main.py # Main application logic and CLI
├── Personal_Expense.sql # SQL schema for initializing the database
- Python 3.x
- Clone the repository:
git clone https://github.com/GODSROBOT/Personal-Expense-Tracker-Python.git cd Personal-Expense-Tracker-Python
- (Optional) Create and activate a virtual environment:
python -m venv venv .\venv\Scripts\activate
- Install required packages (if any):
(Note: If there is no requirements.txt, dependencies are likely standard library only.)
pip install -r requirements.txt
- The database will be created automatically when you run the application for the first time.
- If needed, you can use
Personal_Expense.sql
to initialize or reset the database schema.
Run the main application:
python main.py
Follow the on-screen prompts to add, view, or filter your expenses.
If you want to create a standalone Windows executable (.exe) for this app, use PyInstaller:
- Open a terminal or command prompt in the project directory.
- (Optional but recommended) Activate your virtual environment if you have one:
.\venv\Scripts\activate
- Make sure all dependencies are installed:
pip install -r requirements.txt
- Install PyInstaller if not already installed:
pip install pyinstaller
- Run PyInstaller to build the executable:
pyinstaller --onefile --windowed main.py
- The
--onefile
flag bundles everything into a single .exe file. - The
--windowed
flag prevents a console window from appearing (for GUI apps).
- The
- After the process completes, find your
.exe
file in thedist
folder:dist\main.exe
- You can now copy or share this
.exe
file. It will run on any Windows machine without needing Python installed.
This project is licensed under the MIT License.