Wooble
Back to Sneha's profile
Verified on Wooble

Campus Wallet Tracker: Python CLI Expense Manager

Created a lightweight command-line interface enabling students to manage daily budgets and view instant spending insights without an internet connection.

Sneha KumariCampus Wallet Tracker: Python CLI Expense Manager

100%

Input handling success

1

Core features delivered

Overview

College students frequently lose track of small, spontaneous daily expenses—such as UPI canteen bills, transit fares, and mobile recharges. Existing financial applications are heavily bloated, require constant internet connectivity, demand complex account linkages, and overwhelm users with modern UI noise. The goal was to build a zero-overhead, 100% offline command-line interface tool that gives students an instant, distraction-free way to log transactions, monitor remaining cash, identify high-expense categories, and receive automated warnings before breaching their budget thresholds. Process I approached this by designing a lightweight architecture prioritized around instant execution and bulletproof input validation. To keep system requirements at absolute zero, I skipped heavyweight frameworks and built the entire system using the native Python standard library. I mapped the data layout using primitive dictionary structures inside lists for flexible, low-overhead transaction tracking. During iteration, I initially mapped manual date tracking but quickly realized it slowed down user friction for fast UPI logs. I refactored the module to allow a simple 'Enter' keystroke to automatically fallback to the system timestamp via the datetime library. To prevent common fatal CLI script crashes, I implemented robust recursive try-except blocks ensuring arbitrary user inputs like tex Results The project successfully met all specified constraints and was delivered as a highly efficient, single-file script. By implementing localized data operations, transaction logging executes instantly with 0ms network latency. The inclusion of intelligent defaults, like auto-filling the current timestamp on empty date inputs, successfully reduced user data entry steps from 3 steps down to 1. Furthermore, local stress-testing verified a 100% crash resistance rate against malformed inputs (such as entering letters for monetary amounts or selecting non-existent menu items), ensuring a continuous and Reflection If building this system again with more time, I would decouple the system architecture to use persistent local storage rather than in-memory volatile lists. Integrating Python's native 'json' or 'csv' file modules would ensure that a student's logs are safely written to the local disk and retained between application restarts. Additionally, I would expand the analytics engine to parse and display relative month-over-month spending trends, giving users better historical visibility into their personal financial habits.

Links & files

Artifacts

5

Gallery

5