47 lines
2.0 KiB
Markdown
47 lines
2.0 KiB
Markdown
# Tally
|
|
|
|
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, Household, Utilities, Shopping, Health, Beauty, 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.
|
|
|
|
## Deploy
|
|
|
|
Live at **https://tally.shaebali.com** (Dokploy app `tally`, built from the
|
|
`main` branch of the `shaebali/tally` Gitea repo). To ship: commit, push to
|
|
`main`, then trigger `application.deploy` on Dokploy.
|
|
|
|
Cloudflare caches `app.js`/`styles.css` at the edge, so every deploy that
|
|
changes them must bump the `?v=` query in `index.html` or visitors keep
|
|
getting the old files until the edge entry expires.
|
|
|
|
## Files
|
|
|
|
- `index.html` — page structure
|
|
- `styles.css` — styling
|
|
- `app.js` — all logic (views, repeats, storage)
|
|
- `server.py` — zero-dependency local server (the project runner)
|