37 lines
1.6 KiB
Markdown
37 lines
1.6 KiB
Markdown
# Pin & Penny
|
|
|
|
Daily, weekly and monthly expense tracking. Data is saved privately (local storage on web, on-device storage in the app). No account.
|
|
|
|
There are two versions:
|
|
|
|
- **This folder (plain web)** — no dependencies, no build step. Start it below.
|
|
- **`expo-app/` (React Native + Expo)** — one codebase that runs as a website and as iOS/Android apps. Needs Node.js 20+; see `expo-app/README.md`.
|
|
|
|
## Start
|
|
|
|
```sh
|
|
cd "/mnt/c/workspace/expense tracker"
|
|
python3 server.py
|
|
```
|
|
|
|
Open **http://localhost:8000** in your browser.
|
|
To use another port: `PORT=8080 python3 server.py`.
|
|
|
|
## Features
|
|
|
|
- **Sidebar views** — Daily, Weekly, Monthly and All expenses with live counts, each group with its own total.
|
|
- **Categories** — Food, Transport, Housing, Utilities, Shopping, Health, Entertainment, Other.
|
|
- **Repeats** — mark an expense Daily, Weekly or Monthly. Repeating entries appear under “Repeating expenses” with the next due date and a one-click **Log next occurrence** button.
|
|
- **Summary** — totals plus a per-category spending breakdown for whatever is shown.
|
|
- **INR amounts** — everything is shown in rupees (₹) with Indian digit grouping.
|
|
- **Search and filters** — by text, category and repeat type.
|
|
- **Edit / delete** — every entry can be changed or removed.
|
|
- **Sample data** — realistic entries are loaded on first run so each view has content. Use **Clear all** to start empty and **Load sample data** to add them back.
|
|
|
|
## Files
|
|
|
|
- `index.html` — page structure
|
|
- `styles.css` — styling
|
|
- `app.js` — all logic (views, repeats, storage)
|
|
- `server.py` — zero-dependency local server (the project runner)
|