Skip to content

Releases: jkdevcode/trackmyexpenses

TrackMyExpenses v1.0.0 - First Stable Release

Choose a tag to compare

@jkdevcode jkdevcode released this 19 Apr 02:18
a28e443

🚀 TrackMyExpenses v1.0.0 — First Stable Release

This is the first stable release of TrackMyExpenses, a fullstack expense management platform built as a monorepo with a production-ready Docker-based workflow.


🧱 Tech Stack

  • Frontend: React 19 + Vite + Tailwind
  • Backend: NestJS + Prisma
  • Database: MySQL
  • Infrastructure: Docker + Docker Compose + Nginx
  • CI/CD: GitHub Actions

✨ Key Features

  • Fullstack monorepo architecture
  • Authentication & user management
  • Expense & invoice tracking
  • OCR-based invoice processing
  • Reports and PDF generation
  • Multi-currency support
  • Health check endpoints for all services

⚙️ Infrastructure & DevOps

  • Dockerized full stack (frontend, backend, MySQL)
  • Nginx serving frontend with SPA routing and caching
  • Prisma ORM with schema management
  • Environment-based configuration using .env
  • GitHub Actions CI pipelines:
    • Backend: lint, tests, coverage, e2e, Docker build, Compose smoke test
    • Frontend: lint, build, Playwright e2e
  • Manual CD workflow using Docker Compose via SSH

🧪 Testing & Quality

  • Backend:
    • Unit tests (Jest)
    • Coverage reports
    • E2E tests with database
  • Frontend:
    • Build validation
    • Playwright browser tests
  • Infrastructure:
    • Docker Compose smoke test validating full stack startup

🚀 Deployment

  • Docker Compose-based deployment
  • Supports local and staging environments
  • Backend image can be published to GHCR
  • Remote deployment via SSH (docker compose up -d)

⚠️ Notes

  • .env file is required in production environments
  • PRISMA_MIGRATE_DEPLOY can auto-run migrations
  • Frontend variables are injected at build time
  • Backend uses runtime environment variables
  • Current deployment uses git pull (can be improved in future versions)

🎯 Conclusion

v1.0.0 establishes a solid foundation with:

  • Clean architecture
  • Containerized delivery
  • Automated CI validation
  • Production-ready environment handling

This release is ready for real-world usage and future iteration.