A high-performance SaaS platform for developer productivity, featuring polyglot persistence, robust CI/CD, and a decoupled architecture.
DevTrack Pro is a full-stack developer productivity suite designed to handle complex project management and real-time analytics. Built with a modern micro-services mindset, it implements a Polyglot Persistence architecture, utilizing PostgreSQL for strong relational data consistency and MongoDB for high-speed metric aggregation.
- Advanced Authentication: Secure JWT-based auth with HTTP-only cookies and third-party API integration for reliable password recovery (via Resend HTTP API to bypass standard cloud SMTP restrictions).
- Polyglot Database Architecture: * Relational data (Users, Projects, Tasks) managed via PostgreSQL + TypeORM.
- Application metrics and logging managed via MongoDB + Mongoose for optimized aggregation pipelines.
- Automated CI/CD Pipeline: Fully automated testing and deployment workflows using GitHub Actions.
- Quality Assurance Gate: Strict 80% minimum test coverage threshold enforced at the pipeline level before any deployment.
- Framework: React 18 + Vite (TypeScript)
- Styling: Tailwind CSS
- Testing: Vitest + React Testing Library
- Framework: NestJS (TypeScript)
- Persistence: TypeORM & Mongoose
- Email Service: Resend (HTTP API)
- Testing: Jest (Unit & E2E)
- PostgreSQL: Serverless hosting via Neon.
- MongoDB: Cloud hosting via MongoDB Atlas.
- CI/CD: GitHub Actions (Automated build, test, and deploy triggers).
The application follows a decoupled client-server architecture:
- GitHub Actions acts as the gatekeeper. On every push to
main, it provisions a Node.js runner, installs dependencies, lints, and runs the entire test suite. - If tests pass (and maintain >80% coverage), the pipeline signals the cloud providers.
- Render pulls the backend code, injects secure environment variables, connects to the cloud databases via SSL, and exposes the RESTful API.
- Vercel builds the optimized React static assets and deploys them to a global Edge CDN, dynamically routing API calls to the Render backend.
To run this project locally, you will need Node.js (v20+) and Docker Desktop installed. We use Docker Compose to orchestrate the local database infrastructure.
git clone [https://github.com/yourusername/devtrack-pro.git](https://github.com/yourusername/devtrack-pro.git)
cd devtrack-proSpin up the local PostgreSQL and MongoDB instances in detached mode:
docker-compose up -dcd backend
npm installCreate a .env file in the backend directory:
PORT=3000
POSTGRES_HOST=localhost
POSTGRES_PORT=5432
POSTGRES_USER=root
POSTGRES_PASSWORD=rootpassword
POSTGRES_DB=devtrack_db
MONGO_URI=mongodb://root:rootpassword@localhost:27017/devtrack_metrics?authSource=admin
JWT_SECRET=your_super_secret_development_key
RESEND_API_KEY=your_resend_api_key
FRONTEND_URL=http://localhost:5173Run the development server:
npm run start:devcd ../frontend
npm installCreate a .env.local file in the frontend directory:
VITE_API_URL=http://localhost:3000Run the frontend:
npm run devTesting is a first-class citizen in this project.
- Backend:
cd backend && npm run test:cov(Generates full coverage report) - Frontend:
cd frontend && npm run test(Runs Vitest UI component tests)
This project is licensed under the MIT License.