https://github.com/bxt/dsba
Damn Simple Budget App
https://github.com/bxt/dsba
budgeting javascript pwa svelte sveltekit
Last synced: 19 days ago
JSON representation
Damn Simple Budget App
- Host: GitHub
- URL: https://github.com/bxt/dsba
- Owner: bxt
- Created: 2026-05-31T09:36:14.000Z (26 days ago)
- Default Branch: main
- Last Pushed: 2026-05-31T14:26:23.000Z (25 days ago)
- Last Synced: 2026-05-31T16:08:22.466Z (25 days ago)
- Topics: budgeting, javascript, pwa, svelte, sveltekit
- Language: TypeScript
- Homepage: https://bxt.github.io/dsba
- Size: 52.7 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# DSBA
**Damn Simple Budget App**
Keep track of your expenses, using a browser-based app. No data is shared, no account is required.
You can use the app here: https://bxt.github.io/dsba/ By default, no data is sent to me or Github, but if you don't trust this, you can also self-host the app. You can either build it yourself from the instructions below or use the static files built in GitHub actions.
## Motivation
At some place I just had a wallet with cash. Keeping track of expenses was simple: See how many bills are left, and when they were gone, they were gone. Nowadays, things are more complicated: Multiple bank accounts, credit cards, sharing a meal with friends, Amazon vouchers, PayPal balance. One solution to this problem is to connect all those with a central service that tracks your expenses and have an AI classify those into budgets. Surely there are some great solutions for that. To me, this feels too complex and data-hungry. Instead, I just want a digital version of a wallet, which just keeps track of how much money I have left. And for this I am willing to enter my expenses manually. This is what DSBA (Damn Simple Budget App) was made for.
## Developing
Once you've checked out the project and installed dependencies with `pnpm install`, start a development server:
```sh
pnpm run dev
# or start the server and open the app in a new browser tab
pnpm run dev -- --open
```
To run the tests, prepare by doing `npx playwright install` and then run those commands:
```sh
pnpm run test:unit
pnpm run test:e2e --ui
```
To run the linting and formatting (if not done by the editor anyways) run:
```sh
pnpm run lint
```
To run all the checks:
```sh
pnpm run "/^test:.*|^lint$|^build$|^check$/"
```
## Building
To create a production version of your app:
```sh
pnpm run build
```
You can preview the production build with `pnpm run preview`.