Campus Cashbook: Student Expense Tracking & Budget Analysis System
Track expenses, monitor budgets, and identify spending habits from a single Python terminal application
Overview
College students like me spend small amounts daily on food, travel, recharges, study materials, and subscriptions. These expenses often go untracked, making it hard to see where money goes or why budgets run out early. The challenge was to build an offline, command-line expense tracker that lets students record spending, review history, monitor budgets, and spot patterns without internet, apps, or external services. Campus Cashbook solves this with a lightweight Python tool using only standard libraries. It keeps budgeting simple, fast, and accessible for everyday student use Process I started by reviewing the requirements and defining the essential features of the expense tracker. The first version stored expenses only in memory, but that lost data after exit, so I moved to JSON storage for simple persistence without a database. I then built a menu-based interface to keep the tool easy to use, added expense summaries and category analysis, and introduced a monthly budget alert to help users control spending. To make the app more useful, I included a finance score, streak tracking, spending insights, and CSV export. I refined the output with clearer summaries and text charts, while keeping the project lightweight, reliable, and fully compliant with the hackathon rules by using only Python standard libraries Results The final solution delivers a fully offline expense tracker that helps students record, organize, and review their daily spending. Users can add transactions, check history, track monthly budgets, find their top spending category, and export reports for later use. With JSON-based storage, all data stays saved between sessions. The app is lightweight, easy to run, and meets the hackathon rules by using only Python standard libraries with no internet, frameworks, or databases Reflection If I had more time, I would expand the project with visual charts, stronger search and filtering, recurring expense support, and multiple user profiles. I would also improve the analysis engine so it can give smarter spending advice based on past behavior. For a production version, I would move storage to SQLite or PostgreSQL, add user authentication, and build a web or mobile interface while keeping the same simple and student-friendly design