How abhinandan12317/mean-devops-assignment works
This is a containerized MEAN tutorial-management application. Users browse, search, add, view, edit, publish, and delete tutorials through an Angular UI; requests pass through Nginx to an Express API, which persists tutorial records in MongoDB. The README documents the reverse-proxy and container layout. Some UI components and deployment wiring were not sampled, so those links reflect documented architecture or are omitted where call ownership is uncertain.
Main entry points: app-routing.module.ts Page routing · nginx.conf Nginx proxy · tutorial.service.ts HTTP service · docker-compose.yml Container stack
Components 17
Angular UI
- Angular app
frontend/src/app/app.component.ts - Page routing
frontend/src/app/app-routing.module.ts - Tutorial list
frontend/src/app/components/tutorials-list - Tutorial details
frontend/src/app/components/tutorial-details - Add tutorial
frontend/src/app/components/add-tutorial - HTTP service
frontend/src/app/services/tutorial.service.ts
Tutorial API
- Express server
backend/server.js - Tutorial routes
backend/app/routes/turorial.routes.js - Tutorial handlers
backend/app/controllers/tutorial.controller.js
Persistence
- Tutorial model
backend/app/models/tutorial.model.js - Database setup
backend/app/models/index.js - MongoDB
docker-compose.yml
Runtime routing
- Nginx proxy
nginx.conf - Container stack
docker-compose.yml - Angular container
frontend/Dockerfile - Node container
backend/Dockerfile
Other components
- Browser user
Connections 22
- Browser user → Nginx proxy: HTTP requests
- Nginx proxy → Angular container: serves UI
- Nginx proxy → Node container: proxies API
- Angular container → Angular app: loads
- Angular app → Page routing: routes pages
- Page routing → Tutorial list: opens list
- Page routing → Tutorial details: opens detail
- Page routing → Add tutorial: opens add
- Tutorial list → HTTP service: lists, searches, clears
- Tutorial details → HTTP service: reads, updates, deletes
- Add tutorial → HTTP service: creates
- HTTP service → Nginx proxy: calls API
- Node container → Express server: runs
- Express server → Tutorial routes: mounts routes
- Tutorial routes → Tutorial handlers: dispatches handlers
- Tutorial handlers → Tutorial model: queries, mutates
- Express server → Database setup: connects database
- Database setup → Tutorial model: registers schema
- Tutorial model → MongoDB: persists records
- Container stack → Angular container: runs
- Container stack → Node container: runs
- Container stack → MongoDB: runs