How shalini-576-cse/shaliniportfolio05 works
Shalini Portfolio is a static personal portfolio served by an Express backend, with optional MongoDB-backed contact submissions and project listings. Visitors load the site, browse dynamically fetched projects (or frontend fallbacks), and submit the contact form; an administrator can create projects through a token-protected API. The sampled source supports the request and persistence paths shown. The README documents deployment and configuration, but those are not runtime product components.
Main entry points: server.js Express Server · script.js Portfolio Interactions · contact.js Contact API · projects.js Projects API
Components 11
Portfolio Frontend
- Portfolio Page
frontend/index.html - Portfolio Interactions
frontend/script.js
Express API
- Express Server
backend/server.js - Contact API
backend/routes/contact.js - Projects API
backend/routes/projects.js - Rate Limiter
backend/middleware/rateLimit.js
Persistence
- Message Model
backend/models/Message.js - Project Model
backend/models/Project.js
Other components
- Visitor
- Administrator
- MongoDB
Connections 15
- Visitor → Portfolio Page: opens
- Express Server → Portfolio Page: serves
- Portfolio Page → Portfolio Interactions: loads script
- Portfolio Interactions → Express Server: fetches projects
- Express Server → Projects API: dispatches
- Portfolio Interactions → Express Server: posts contact
- Express Server → Contact API: dispatches
- Administrator → Express Server: creates project
- Contact API → Rate Limiter: checks rate
- Projects API → Rate Limiter: checks rate
- Contact API → Message Model: saves message
- Projects API → Project Model: reads and saves
- Express Server → MongoDB: connects
- Message Model → MongoDB: persists
- Project Model → MongoDB: persists