Private
Public Access
1
0
Commit Graph

59 Commits

Author SHA1 Message Date
Catherine Renelle 0b6ff8faf1 Add initial EF Core migration
Creates all database tables: users, accounts, transactions,
categories, payees, budgets, scheduled_transactions, loans,
investments, reconciliations, plugins, and import batches.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 10:16:48 -05:00
Catherine Renelle 524176faec Fix .gitignore excluding frontend plugins and test files
The broad plugins/ and imports/ patterns were matching directories
at all levels, excluding frontend/src/plugins/vuetify.ts,
frontend/src/views/imports/, frontend/src/views/plugins/, and
src/Purrse.Tests/Plugins/. Changed to /plugins/ and /imports/
to only match root-level directories.

This was the root cause of the Docker build failure - vuetify.ts
was missing from the repo.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 10:04:19 -05:00
Catherine Renelle 79821e3e04 Add .dockerignore files and increase Node memory limit
Prevents node_modules/dist from polluting Docker build context.
Sets NODE_OPTIONS max-old-space-size=4096 for Vite builds on
memory-constrained servers.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 09:53:47 -05:00
Catherine Renelle 7ebff12b33 Use full node:22 image for frontend build stage
Alpine was causing native dependency issues with sass.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 09:18:31 -05:00
Catherine Renelle 9959e7dbdc Harden frontend Dockerfile for constrained environments
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 09:17:10 -05:00
Catherine Renelle b46e62731e Separate typecheck from build for faster Docker builds
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 09:15:02 -05:00
Catherine Renelle 8ee4a7b2c9 Add package-lock.json for reproducible frontend builds
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 09:12:37 -05:00
Catherine Renelle 3db02f8472 Change frontend port to 9080 to avoid conflicts
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 09:06:29 -05:00
Catherine Renelle 6520ebf221 Initial commit: Purrse personal finance app
Self-hosted, plugin-extensible personal finance manager built with
ASP.NET Core 9.0, Vue 3 + Vuetify 3, and PostgreSQL 17.

Backend (8 .NET projects):
- Core: 19 domain models, 6 enums, 14 DTOs, 12 service interfaces
- Data: EF Core DbContext, 16 entity configurations, category seeder
- API: 14 controllers, 15 services, JWT auth, SignalR, middleware
- Plugins: Abstractions + OFX/CSV/QIF file parsers
- Tests: 28 xUnit tests (fingerprinting, duplicate detection, parsers)

Frontend (Vue 3 + Vuetify 3 + TypeScript):
- 13 views, Pinia stores, Axios API services with JWT interceptors
- Dashboard, accounts, transactions, categories, imports, and more

Deployment:
- Docker Compose (PostgreSQL 17 + .NET API + nginx frontend)
- Auto-migration on startup

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 08:56:46 -05:00