Modern accounting and finance management platform built with scalable microservices architecture.
Comptaleyes is a full-stack web application designed for accounting and financial management. The platform features a NestJS backend API, React frontend, and automated AWS infrastructure deployment using CDK.
This monorepo contains three main components:
comptaleyes/
βββ backend/ # NestJS API with authentication & business logic
βββ frontend/ # React SPA with modern UI components
βββ infra/ # AWS CDK infrastructure as code
βββ .github/ # CI/CD workflows (GitHub Actions)
- Framework: NestJS (Node.js 22)
- Database: MongoDB Atlas
- Authentication: JWT + OAuth2 (Microsoft, Google, Facebook)
- Email: SMTP-based verification & password reset
- Deployment: Docker β AWS ECR β EC2
- Framework: React 19 with TypeScript
- Build Tool: Vite
- UI Library: @ciscode/ui-authentication-kit
- Deployment: S3 + CloudFront CDN
- IaC: AWS CDK (TypeScript)
- Compute: EC2 for backend containers
- Storage: S3 for frontend static assets
- CDN: CloudFront for global distribution
- Secrets: SSM Parameter Store
- Node.js 22+ and npm
- Docker Desktop
- AWS CLI configured (for deployment)
- MongoDB Atlas account
cd backend
cp .env.example .env
# Edit .env with your credentials
npm install
npm run devBackend will be available at http://localhost:3000
Health Check: curl http://localhost:3000/health
cd frontend
cp .env.example .env
# Edit .env with backend URL
npm install
npm run devFrontend will be available at http://localhost:5173
cd backend
docker compose -f compose/docker-compose.dev.yml up --build- Backend README - API architecture, domain logic, deployment
- Frontend README - UI components, routing, authentication
- Infrastructure README - CDK stacks, AWS resources
All sensitive credentials are stored in .env files (local) or AWS SSM Parameter Store (production).
Required Environment Variables: See .env.example files in each directory:
# Backend tests
cd backend
npm test # All tests
npm run test:watch # Watch mode
npm run test:cov # Coverage report
# Frontend tests
cd frontend
npm testGitHub Actions workflows handle automated deployments:
- Backend CI: PR validation (lint, test, typecheck)
- Backend CD: Build Docker β ECR β EC2 deployment
- Frontend CI: PR validation (lint, test, typecheck)
- Frontend CD: Build Vite β S3 β CloudFront invalidation
- CDK Deploy: Infrastructure updates via CDK
# Deploy infrastructure
cd infra
npm run build
npx cdk deploy --all
# Deploy backend (via GitHub Actions)
git push origin master # Triggers backend-cd.yml
# Deploy frontend (via GitHub Actions)
git push origin master # Triggers frontend-cd.yml- Frontend: Deployed via CloudFront CDN for global distribution
- Backend API: Deployed on AWS EC2 with Docker
- Database: MongoDB Atlas
- Infrastructure: AWS (us-east-1 region)
- Create feature branch from
develop - Make changes and commit
- Push and create PR β
develop - CI pipeline validates (lint, test, typecheck)
- After review, merge to
develop - When ready for release, PR β
mastertriggers deployment
| Component | Technologies |
|---|---|
| Backend | NestJS, TypeScript, MongoDB, Docker |
| Frontend | React, Vite, TailwindCSS, React Router |
| Authentication | JWT, OAuth2, @ciscode/authentication-kit |
| Infrastructure | AWS CDK, EC2, S3, CloudFront, ECR |
| CI/CD | GitHub Actions with OIDC |
| Monitoring | CloudWatch Logs, Health endpoints |
See CONTRIBUTING.md for development guidelines.
To report security vulnerabilities: info@ciscod.com
See SECURITY for our security policy.
MIT License - See LICENSE file for details.
Copyright (c) 2026 CisCode