No description
  • TypeScript 77.9%
  • CSS 7.5%
  • Java 5.8%
  • JavaScript 4.1%
  • Shell 3.7%
  • Other 1%
Find a file
Gjessing1 8933f6ba9b
All checks were successful
docker / build-and-deploy (push) Successful in 51s
chore(deploy): move host deploy dir to ~/docker/<Category>/<svc>
2026-10-28 21:32:58 +00:00
.forgejo/workflows chore(deploy): move host deploy dir to ~/docker/<Category>/<svc> 2026-10-28 21:32:58 +00:00
android feat: serve the signed Android APK for download 2026-10-03 21:37:48 +00:00
apps/web feat: add Capacitor Android shell 2026-10-03 15:43:06 +00:00
assets/screenshots docs(readme): add app screenshots 2026-10-28 18:45:31 +00:00
backend feat: serve the signed Android APK for download 2026-10-03 21:37:48 +00:00
docs feat: serve the signed Android APK for download 2026-10-03 21:37:48 +00:00
mobile feat: add Capacitor Android shell 2026-10-03 15:43:06 +00:00
packages/core feat: browse archive timeline and merge shop names 2026-09-30 20:44:40 +00:00
scripts chore(deploy): move host deploy dir to ~/docker/<Category>/<svc> 2026-10-28 21:32:58 +00:00
.dockerignore chore: scaffold moneta from project-shell 2026-09-29 20:14:51 +00:00
.editorconfig chore: scaffold moneta from project-shell 2026-09-29 20:14:51 +00:00
.env.example chore(deploy): move host deploy dir to ~/docker/<Category>/<svc> 2026-10-28 21:32:58 +00:00
.gitignore feat: add Capacitor Android shell 2026-10-03 15:43:06 +00:00
.nvmrc chore: scaffold moneta from project-shell 2026-09-29 20:14:51 +00:00
.prettierignore feat: add Capacitor Android shell 2026-10-03 15:43:06 +00:00
.prettierrc.json chore: scaffold moneta from project-shell 2026-09-29 20:14:51 +00:00
capacitor.config.json feat: add Capacitor Android shell 2026-10-03 15:43:06 +00:00
docker-compose.yml chore(deploy): move host deploy dir to ~/docker/<Category>/<svc> 2026-10-28 21:32:58 +00:00
eslint.config.js feat: add Capacitor Android shell 2026-10-03 15:43:06 +00:00
package-lock.json feat: add Capacitor Android shell 2026-10-03 15:43:06 +00:00
package.json feat: add Capacitor Android shell 2026-10-03 15:43:06 +00:00
README.md docs(readme): add app screenshots 2026-10-28 18:45:31 +00:00
tsconfig.base.json chore: scaffold moneta from project-shell 2026-09-29 20:14:51 +00:00
tsconfig.json chore: scaffold moneta from project-shell 2026-09-29 20:14:51 +00:00

Moneta

Receipts and invoices in one archive: collected from maily, captured with the phone camera.

Archive of recent receipts and invoices, photographed or imported from mail Shops tab listing every merchant with its document count Starred receipt with amount, purchased item, tags and the original image Invoice in dark mode with due date, KID and account number ready to copy
Archive Shops Receipt with original Invoice (dark mode)

Screenshots: Moneta 0.1.0 (commit c8645e5), taken 28 October 2026 with sample data.

Development

nvm use            # Node 22+ locally; images run Node 24
npm install
cp .env.example .env
npm run dev        # tsc watch · backend http://localhost:3047 · web http://localhost:5173
npm run gate       # format → lint → build → typecheck → test (+ docker build if packaging changed)

Layout

  • packages/core: shared domain types and logic
  • apps/web: React + Vite web app
  • backend: Fastify API; serves the built web app in production

Deployment

Pushing to main builds the image on Forgejo Actions, pushes it to git.gjessing.io/gjessing1/moneta-backend and redeploys it on the host. Health check: GET /api/health.