enterprise-sprint-tracker-api
v1.0.0
Published
NestJS microservice for managing long-running enterprise transformation sprints with MongoDB persistence
Maintainers
Readme
🏢 Enterprise Sprint Tracker API
NestJS microservice for managing long-running enterprise transformation sprints
Built by the Six Personalities: 🐾 Neko-Arc, 🎭 Mario, 🗡️ Noel, 🎸 Glam, 🧠 Hannibal, 🧠 Tetora
🎯 Overview
Enterprise-grade REST API for tracking multi-phase sprints across sessions with MongoDB Atlas persistence. Designed to manage complex enterprise transformation projects (like v1.x → v2.0 upgrades) that span multiple days.
Key Features:
- ✅ Sprint metadata management (planning, progress tracking)
- ✅ Phase tracking with detailed task breakdowns
- ✅ Automatic reminder system
- ✅ Progress history with security metrics
- ✅ MongoDB Atlas cloud persistence
- ✅ Swagger/OpenAPI documentation
- ✅ Type-safe DTOs with validation
- ✅ RULE 5 compliant architecture (NestJS best practices)
📦 Architecture (RULE 5 Compliant)
src/
├── main.ts # NestJS entry point
├── app.module.ts # Root module (orchestration)
├── sprint/
│ ├── sprint.module.ts # Sprint module (orchestration)
│ ├── sprint.controller.ts # REST API endpoints
│ ├── sprint.service.ts # MongoDB interactions
│ ├── dto/ # Request/Response DTOs
│ │ ├── create-sprint.dto.ts
│ │ ├── update-phase-status.dto.ts
│ │ └── record-progress.dto.ts
│ └── schemas/ # Mongoose schemas
│ ├── sprint-metadata.schema.ts
│ ├── sprint-phase.schema.ts
│ ├── reminder.schema.ts
│ └── sprint-progress.schema.ts
└── health/
├── health.module.ts # Health module
└── health.controller.ts # Health checks🚀 Quick Start
Installation
npm installConfiguration
Create .env file:
MONGODB_URI=mongodb+srv://user:[email protected]/
PORT=3100
NODE_ENV=development
CORS_ORIGIN=*Run Development Server
npm run start:devService runs on: http://localhost:3100 Swagger docs: http://localhost:3100/api
Build for Production
npm run build
npm run start:prod📚 API Endpoints
Sprints
POST /sprints- Create a new sprintGET /sprints- Get all sprintsGET /sprints/:sprintId- Get sprint by IDGET /sprints/:sprintId/dashboard- Get complete sprint dashboardPUT /sprints/:sprintId/status- Update sprint statusDELETE /sprints/:sprintId- Delete a sprint
Phases
GET /phases- Get all phases (optional status filter)GET /phases/pending- Get pending phasesGET /phases/:phaseId- Get phase by IDPUT /phases/:phaseId/status- Update phase status
Progress
POST /progress- Record progress for a phaseGET /progress/:sprintId- Get progress historyGET /progress/:sprintId/latest- Get latest progress
Reminders
GET /reminders/active- Get all active remindersGET /reminders/sprint/:sprintId- Get sprint remindersPUT /reminders/:reminderId/deactivate- Deactivate reminder
Health
GET /health- Health checkGET /health/ready- Readiness check
💾 MongoDB Collections
Database: enterprise-sprint-tracker
| Collection | Description |
|-----------|-------------|
| sprint-metadata | High-level sprint information |
| sprint-phases | Detailed phase breakdown with tasks |
| reminders | Active reminders for pending work |
| sprint-progress | Historical progress tracking |
🔧 Example Usage
Create a Sprint
curl -X POST http://localhost:3100/sprints \
-H "Content-Type: application/json" \
-d '{
"sprintId": "enterprise-sprint-3.0",
"name": "Enterprise Microservices Transformation",
"project": "Worker Defense System",
"currentVersion": "v1.5.0",
"targetVersion": "v2.0.0",
"startDate": "2025-11-13",
"estimatedDuration": "6 hours",
"status": "IN_PROGRESS",
"completedPhases": [],
"remainingPhases": ["Phase 1", "Phase 2"],
"progress": { "completed": 0, "total": 2, "percentage": 0 }
}'Get Sprint Dashboard
curl http://localhost:3100/sprints/enterprise-sprint-3.0/dashboardUpdate Phase Status
curl -X PUT http://localhost:3100/phases/phase-1/status \
-H "Content-Type: application/json" \
-d '{
"status": "COMPLETED",
"completionPercentage": 100
}'Record Progress
curl -X POST http://localhost:3100/progress \
-H "Content-Type: application/json" \
-d '{
"sprintId": "enterprise-sprint-3.0",
"phase": "Phase 1: Security",
"status": "COMPLETED",
"completionPercentage": 100,
"filesChanged": 15,
"linesAdded": 1200,
"commit": "abc123",
"pushedToGitHub": true,
"notes": ["Enhanced RBAC", "Added audit logging"]
}'🧪 Testing
# Unit tests (not yet implemented)
npm test
# Type check
npx tsc --noEmit🐾 Six Personalities Collaboration
This microservice embodies the collaborative nature of the Six Personalities:
- 🐾 Neko-Arc: Technical implementation and MongoDB integration
- 🎭 Mario: API orchestration and endpoint design
- 🗡️ Noel: Type safety and validation logic
- 🎸 Glam: Documentation (this README!)
- 🧠 Hannibal: Architecture analysis and schema design
- 🧠 Tetora: Multi-collection integration and dashboard views
📝 License
MIT
Nyaa~! Enterprise sprints are now managed with professional-grade REST API, desu~! 🐾✨
Generated with Claude Code
