The future of automobile service and appointment management.
This project was evaluated by Mr. Yashod Perera, Lecturer, University of Moratuwa.
- Evaluator: Mr. Yashod Perera
- Date: 23rd November 2025
- Time: 2:00 PM IST (Sri Lankan Time)
- Outcome: Successfully evaluated and marked as COMPLETED.
All repositories in this organization are now ARCHIVED.
Final verification completed. All services implemented, tested, and ready for production.
| Aspect | Status |
|---|---|
| Architecture | โ Excellent |
| Implementation | โ 100% Complete |
| Security | โ Production Ready |
| Data Consistency | โ Perfect |
| Production Ready | โ YES |
| Build Status | โ All Passing |
| Test Status | โ All Passing |
| Documentation | โ Complete |
- โ All 8 Microservices Complete (Including Notification Service!)
- โ 113/113 Endpoints Implemented with full business logic
- โ All Services Compile Successfully (331 source files)
- โ All Tests Passing (8/8 services - 100%)
- โ Complete OpenAPI Documentation (Swagger UI for all services)
- โ Perfect Data Consistency (Fixed UUID strategy across all services)
- โ Comprehensive Data Seeders (All 8 services)
- โ Docker Ready (All services containerized)
- โ Authentication Service: JWT, refresh tokens, email verification, password reset, RBAC (26/26 endpoints)
- โ Vehicle Service: Full CRUD, photo management, service history (10/10 endpoints)
- โ Appointment Service: Booking, scheduling, availability, calendar (15/15 endpoints)
- โ Project/Service Management: Workflow, invoicing, notes, photos (18/18 endpoints)
- โ Time Logging Service: Time tracking, aggregations, statistics (9/9 endpoints)
- โ Payment Service: PayHere integration, invoicing, billing (11/11 endpoints)
- โ Admin Service: User management, analytics, reports (18/18 endpoints)
- โ
Notification Service: Email, push notifications, subscriptions (6/6 endpoints) + WebSocket real-time updates (
/ws/notifications) (STOMP/SockJS)
Status: ๐ COMPLETED & ARCHIVED
Release Date: 2025-11-23
Note: All core microservices are implemented and tested. AI Chatbot is implemented as Agent_Bot.
Welcome to the central repository for the TechTorque 2025 project.
This project is a modern, enterprise-grade web application designed to digitize and streamline the operations of an automobile service company.
The project is built on a polyglot microservices architecture. This design provides scalability, resilience, and technological flexibility, allowing each component to use the best tool for its specific job.
- ๐ป Frontend Web App: A Next.js and TypeScript application serving both customers and employees.
- ๐ API Gateway: A single entry point written in Go, responsible for routing, authentication (JWT validation), and rate limiting.
- โ๏ธ Backend Microservices: A suite of independent Spring Boot services, each with its own dedicated PostgreSQL database, handling specific business domains.
- ๐๏ธ Databases: A mix of PostgreSQL for transactional data and MongoDB for semi-structured data like notifications and chat logs.
โ ๏ธ Note: this project deploys to a lightweight Kubernetes distribution โ k3s โ in development and staging. Thek8s-configrepository contains manifests compatible with k3s. SeeKUBERNETES_SETUP.mdandARGOCD_SETUP_SUMMARY.mdfor details on k3s and ArgoCD setup.
For a complete architectural overview, please see the EAD TechTorque.pdf design document.
The entire TechTorque ecosystem is orchestrated using Docker Compose. This allows any developer to build and run all containers with a single command.
- Docker & Docker Compose
- A Java 17+ JDK
- Node.js & npm
- Go language
- Clone this repository.
- Navigate to the project root (where this
README.mdanddocker-compose.ymlare located). - Run the Docker Compose command:
# To start all services and watch for code changes (recommended for development)
docker-compose watchor
# To start all services in the background without hot-reloading
docker-compose up --build -dThis command will build, create, and start all containers.
- Use environment overrides in
k8s-configanddocker-compose.override.ymlfor local secrets. Avoid committing secrets to the repository. - The
docker-compose watchtask is a development helper; it enables hot reload for code changes in the local environment. If you don't have it, usedocker-compose up --build -d.
- API Gateway:
http://localhost:8080 - Frontend Application:
http://localhost:3000(after runningnpm run devin theFrontend_Webdirectory) - Individual Service Docs:
http://localhost:[PORT]/swagger-ui.html(e.g.,http://localhost:8081/swagger-ui.htmlfor the Auth Service)
Each major component of the system resides in its own top-level directory. Please refer to the README.md file within each directory for specific details about that service.
| Service | Port | Endpoints | Status |
|---|---|---|---|
| ๐ Authentication | 8081 | 26/26 (100%) | โ Complete |
| ๐ Vehicle Management | 8082 | 10/10 (100%) | โ Complete |
| ๐ Appointment | 8083 | 15/15 (100%) | โ Complete |
| ๐ง Service/Project | 8084 | 18/18 (100%) | โ Complete |
| โฑ๏ธ Time Logging | 8085 | 9/9 (100%) | โ Complete |
| ๐ณ Payment | 8086 | 11/11 (100%) | โ Complete |
| ๐ค Admin | 8087 | 18/18 (100%) | โ Complete |
| ๐ Notification | 8088 | 6/6 (100%) | โ Complete |
โ ๏ธ NOTE: The two items below are "bonus" / optional features and are NOT counted in the main microservices endpoint totals.
| Feature | Port | Endpoints | Status |
|---|---|---|---|
| ๐ค AI Chatbot (Agent_Bot) | 8091 | 4/4 (100%) | โ
Implemented (see Agent_Bot/) |
Overall Implementation: 113/113 endpoints fully implemented for the 8 core microservices (100%) โ
All 8 core microservices have complete OpenAPI 3.0 documentation accessible via Swagger UI; additionally, the Agent_Bot (AI) uses FastAPI docs at /docs.
| Service | Swagger UI URL |
|---|---|
| Authentication | http://localhost:8081/swagger-ui/index.html |
| Vehicle | http://localhost:8082/swagger-ui/index.html |
| Appointment | http://localhost:8083/swagger-ui/index.html |
| Project/Service | http://localhost:8084/swagger-ui/index.html |
| Time Logging | http://localhost:8085/swagger-ui/index.html |
| Payment | http://localhost:8086/swagger-ui/index.html |
| Admin | http://localhost:8087/swagger-ui/index.html |
| Notification | http://localhost:8088/swagger-ui/index.html |
| Agent_Bot (AI) | http://localhost:8091/docs |
| Name | Role | GitHub |
|---|---|---|
| Randitha (B.H.A.R. Kulasekera) | Group Leader / Project Architect / Full Stack Developer / DevOps | RandithaK |
| Suweka | Full Stack Developer / Quality Assurance | Suweka |
| Akith | Full Stack Developer / Quality Assurance | Akith-002 |
| Pramudi | Full Stack Developer / Frontend Designer | Pramudi02 |
| Aditha | Full Stack Developer / AI Chatbot Developer | AdithaBuwaneka |
| Chamodi | Full Stack Developer | ChamodiSandunika |
| Dhanuja | Full Stack Developer / Project Manager | Dhanuja416 |
| Mahesh | Full Stack Developer / AI Chatbot Developer | TharinduMahesh |
| Rothila | Full Stack Developer / Frontend Designer / Payment Integration Developer | mehara-rothila |
| Dinith | Full Stack Developer | DinithEdirisinghe |
- Branching policy: use
devfor work in progress and create feature branches namedfeature/<ticket-number>-short-description. - Create a draft PR early for design discussions; add tests for new features and link related issues.
- CI: tests run on GitHub Actions. Ensure the relevant
buildtest.yamlpasses locally before opening a PR. - Deploys are managed via ArgoCD. Use
GITOPS_PIPELINE_COMPLETE.mdfor promotion steps.
Note: The project is now completed and archived. The following are recommendations for any future development or forks.
Priority 1: Testing & Monitoring (1 week)
-
Add comprehensive unit tests
-
Integration tests for workflows
-
Set up monitoring & alerting
-
Performance testing
Priority 2: Security Hardening (1 week)
-
Externalize secrets to environment variables
-
HTTPS/TLS configuration
-
Security audit & penetration testing
-
Add rate limiting per user
Priority 3: DevOps & CI/CD (1 week)
-
Set up GitHub Actions CI/CD pipeline
-
Automated deployment scripts
-
Backup & disaster recovery
-
Production environment setup
Phase 1: Advanced Features (4-6 weeks)
- WebSocket for real-time updates
- Advanced analytics dashboard
- 2FA/MFA support
- Mobile app backend
Phase 2: AI Integration (6-8 weeks)
- AI Chatbot service
- AI Chatbot service (Agent_Bot) โ implemented; consider production hardening
- Natural language appointment booking
- Predictive maintenance alerts
Note: WebSocket support is a planned/bonus feature and is NOT IMPLEMENTED yet โ it is not counted in the main microservices totals. The AI Chatbot is implemented as Agent_Bot and is not counted with the 8 core services. See ENDPOINT_IMPLEMENTATION_REPORT.md and PROJECT_RE_EVALUATION_2025.md for status and timelining.
Total Services: 8
Total Source Files: 331
Service Implementation: 16+ files
Lines of Service Code: 4,500+
Average per Service: 280+ lines
- Fastest: Notification (1.2s)
- Slowest: Admin (2.0s)
- Average: 1.7s per service
- Total build time: ~13.5s
- AppointmentServiceImpl - 524 lines
- BillingServiceImpl - 476 lines
- TimeLogService - 401 lines
- StandardServiceServiceImpl - 387 lines
- AuthService - 356 lines
# Clone the repository
git clone https://github.com/TechTorque-2025/TechTorque-2025.git
cd TechTorque-2025
# Start all services with Docker Compose
docker-compose up -d
# Check service health
curl http://localhost:8080/health- API Gateway: http://localhost:8080
- Frontend: http://localhost:3000
- Authentication API: http://localhost:8081/swagger-ui/index.html
- Agent Bot (AI): http://localhost:8091/docs
- Other Services: http://localhost:808X/swagger-ui/index.html (where X is service number)
Super Admin:
-
Username:
superadmin -
Password:
superadmin123
Admin:
-
Username:
admin -
Password:
admin123
Employee:
-
Username:
employee1 -
Password:
employee123
Customer:
-
Username:
customer -
Password:
customer123
- Final Project Status - Complete production-ready status report
- Complete API Design - Full API specification
- System Design Document - Architecture overview
- Re-Evaluation Report - Transformation documentation
- Previous Audit Report - Historical baseline
All services have interactive API documentation:
- Authentication: http://localhost:8081/swagger-ui/index.html
- Vehicle: http://localhost:8082/swagger-ui/index.html
- Appointment: http://localhost:8083/swagger-ui/index.html
- Project/Service: http://localhost:8084/swagger-ui/index.html
- Time Logging: http://localhost:8085/swagger-ui/index.html
- Payment: http://localhost:8086/swagger-ui/index.html
- Admin: http://localhost:8087/swagger-ui/index.html
- Notification: http://localhost:8088/swagger-ui/index.html
ยฉ 2025 TechTorque

