Expenses record keeper without a back-end -- easy to use, easy to erase.
Demo hosted in Github pages. You can use it safely as long as you trust your browser/device. Don't trust that the page isn't sending your data somewhere? Fork it and upload it to your own hosting provider.
- Web app written with Vue
- Data stored in browsers' IndexedDB through Dexie.js
- Icons bundled with svgeez
It's hard keeping record on what you spend money, and if you're a bit paranoid with your phone and apps, it continues to be hard. This simple application was written to keep a record and easily dispose the information.
Initially I was using BudgetBakers' app, which is, if you haven't used it, GREAT. Honestly, this privacy-focused, small app doesn't really compete with the quality of BudgetBakers; I highly recommend it. But when I got familiar enough and reached the paywall, I was offered to continue using the app albeit with limited functionality, and I thought to myself: what's the catch?
Then it dawned on me that they could be harvesting data to sell it later or whatever, and I don't really know who they are, what their intentions are or what they can and could do, really.
So, here we are. I wrote a quick'n'dirty solution at first (v1) and I've been tweaking and removing stuff over time, which is what you're reading.
- House image by Stanley Donwood, ripped from the In Rainbows (by Radiohead) album artwork
- Cassette doodle by Elionas -- thanks!, CC0 1.0
- Archives icon by Yaroslav Samoylov (archive), CC BY-SA 3.0
- About icon by Yaroslav Samoylov (archive), CC BY-SA 3.0
SVG icons are found in public/icons, bundled together by running
svgeez build --source public/icons --destination public/icons.svg
then I copy the contents
of the output file (icons.svg
) to index.html.
PWA logo assets generated with @vite-pwa/assets-generator
with the minimal
preset.
This was upgraded from Vue2/webpack to Vue3/vite, the basic scripts are:
dev
(yarn dev
): start development serverbuild
(yarn build
): transpile assets, ready for deploymentserve
(yarn serve
): start preview server from which the output ofbuild
is served