A modern student wellbeing and counselling platform.
Designed to feel calm, private, and trustworthy while helping students find the right support quickly.
Nirvaan connects students, counsellors, and institutes in one streamlined experience. The platform focuses on three core outcomes:
- Early self-awareness through guided screening.
- Better support access through counsellor discovery and booking.
- Ongoing help through resources, chat, and institute forums.
Nirvaan uses a warm, soft, modern visual tone that emphasizes comfort and clarity:
- Primary mood: light, minimal, calm, and professional.
- Brand accents: warm beige and seafoam highlights.
- UX principles: privacy-first, low-friction flows, readable typography, and card-based layouts.
Core palette used in the app:
#FAF7F2background (pearl/oyster shell)#E6CDB5brand accent#D9B491strong accent#B6D2C8soft supporting accent#1F2937primary text
- Secure authentication and protected flows using NextAuth.
- Real-time chat-ready architecture powered by Stream Chat SDK.
- Counsellor profiles and booking-ready components.
- Institute forums for student-community interaction.
- Guided screening flow for first-level support direction.
- Resource discovery for evidence-informed wellbeing content.
- Admin metrics endpoint for operational visibility.
| Layer | Technology |
|---|---|
| Frontend | Next.js 15 (App Router), React 19 |
| Styling | Tailwind CSS 4 + custom design tokens |
| Auth | NextAuth.js |
| Database | MongoDB with Mongoose |
| Realtime/Chat | Stream Chat + Stream Chat React |
| Tooling | ESLint 9 |
nirvaan/
|- app/
| |- api/ # Route handlers (auth, profile, forums, metrics)
| |- Components/ # Reusable UI + context providers
| |- admin/ # Admin dashboard views
| |- counsellor/ # Counsellor discovery pages
| |- dashboard/ # User dashboard
| |- forum/ # Dynamic forum pages
| |- resources/ # Resource center
| |- screening/ # Screening flow
| |- universities/ # Institute related pages
| |- globals.css # Design tokens and utility layer
| |- layout.js # Root layout
| |- page.js # Homepage
|- lib/ # DB and stream utilities
|- models/ # Mongoose models
|- public/ # Static assets
/api/auth/[...nextauth]authentication handler./api/user/profileuser profile read/update./api/counsellorscounsellor listing/management./api/institutesinstitute listing/management./api/forum/joinand/api/forum/join/deleteforum participation./api/admin/metricsadmin-facing metrics endpoint.
- Node.js 18+
- npm
- MongoDB connection string
npm installCreate .env.local in the project root:
MONGODB_URI=your_mongodb_connection_string
NEXTAUTH_SECRET=your_nextauth_secret
NEXTAUTH_URL=http://localhost:3000npm run devOpen http://localhost:3000.
npm run dev # Next dev with Turbopack
npm run build # Production build
npm run start # Start production server
npm run lint # ESLint checks- Architecture is modular and App Router-friendly for feature scaling.
- Design tokens in
app/globals.cssmake branding adjustments straightforward. - API routes are already separated by domain and can be extended into service layers.
- Ready for CI addition (
lint,build) with minimal setup.
- Fork the repository.
- Create a feature branch:
git checkout -b feature/your-feature. - Commit changes:
git commit -m "feat: add your feature". - Push branch:
git push origin feature/your-feature. - Open a pull request.
MIT License. See LICENSE for details.
Built for student wellbeing with a modern, human-centered product approach.
