A Comprehensive Mental Health & Wellness Platform for Students
Empowering students with AI-powered therapy, mood tracking, peer support, and professional counseling β all in one place.
Features β’ Tech Stack β’ Getting Started β’ Screenshots β’ API β’ Contributing
Beautiful, intuitive dashboard with mood tracking, appointments, and quick access to all features
- 24/7 Support: Google Gemini-powered mental health chatbot available anytime
- Crisis Detection: Intelligent detection of distressing content with immediate resources
- Empathetic Responses: Trained to provide compassionate, helpful support
- Conversation History: Review past conversations for reflection
- Daily Check-ins: Log your mood with a simple, beautiful interface
- Emotion Tagging: Track specific emotions and triggers
- Visual Progress: Beautiful charts showing mood patterns over time
- Insights: AI-generated insights about your mental health journey
- Friend System: Connect with classmates and peers who care
- Real-time Messaging: Private chat with friends in your support circle
- User Profiles: View friends' profiles and track their wellness journey
- Friend Requests: Send and receive friend requests with notifications
- XP System: Earn experience points for healthy habits
- Badges: Unlock achievements like "First Check-in", "Week Streak", "Mood Helper"
- Progress Tracking: Visual progress toward next achievements
- Engagement Rewards: Stay motivated with gamified wellness activities
- Book Sessions: Schedule appointments with professional counselors
- Available Slots: View counselor availability in real-time
- Appointment Management: View, reschedule, or cancel appointments
- Video Integration: Seamless video calling for virtual sessions
- Guided Exercises: Breathing exercises, meditation, and mindfulness
- Educational Content: Articles and videos on mental health topics
- Coping Strategies: Evidence-based techniques for managing stress
- Emergency Resources: Quick access to crisis hotlines
- Crisis Detection: AI monitors for emergency situations
- Immediate Resources: One-tap access to helplines
- Safety Planning: Tools to create personalized safety plans
- Professional Referrals: Guidance to seek professional help
- Student Dashboard: Full access to all wellness features
- Counselor Dashboard: Manage appointments, view student progress
- Admin Dashboard: User management, analytics, system oversight
- Friend Activity: Get notified when friends need support
- Appointment Reminders: Never miss a counseling session
- Achievement Alerts: Celebrate when you unlock new badges
- Check-in Reminders: Gentle nudges to log your mood
| Technology | Purpose |
|---|---|
| UI Framework | |
| Build Tool & Dev Server | |
| Styling | |
| Navigation | |
| Icons | |
| Data Visualization |
| Technology | Purpose |
|---|---|
| Runtime | |
| API Framework | |
| Database | |
| ODM | |
| Authentication |
| Technology | Purpose |
|---|---|
| AI Chat & Analysis |
| Platform | Service |
|---|---|
| Frontend Hosting | |
| Backend API | |
| Cloud Database |
# Required
Node.js 18+
npm or yarn
# Optional (for AI features)
Google Gemini API Key# 1. Clone the repository
git clone https://github.com/Lullucoder/MindCure.git
cd MindCure
# 2. Install frontend dependencies
npm install
# 3. Install backend dependencies
cd server
npm install
cd ..
# 4. Set up environment variables
cp .env.example .env
# Edit .env with your configurationVITE_API_URL=http://localhost:5000/api
VITE_GEMINI_API_KEY=your_gemini_api_keyPORT=5000
MONGODB_URI=mongodb+srv://your_connection_string
JWT_SECRET=your_jwt_secret
NODE_ENV=development# Terminal 1: Start the backend server
cd server
npm run dev
# Terminal 2: Start the frontend
npm run devOpen your browser and navigate to http://localhost:5173
MindCure/
βββ π src/ # Frontend source code
β βββ π components/ # Reusable UI components
β β βββ π auth/ # Authentication components
β β βββ π chat/ # AI Chat interface
β β βββ π community/ # Forum & community features
β β βββ π layout/ # Layout components (Navbar, Footer)
β β βββ π mood/ # Mood tracking components
β β βββ π social/ # Friends, Messages, Achievements
β β βββ π ui/ # Base UI components
β βββ π context/ # React Context providers
β βββ π hooks/ # Custom React hooks
β βββ π pages/ # Page components
β βββ π services/ # API service functions
β βββ π utils/ # Utility functions
βββ π server/ # Backend source code
β βββ π src/
β βββ π config/ # Configuration files
β βββ π controllers/ # Route controllers
β βββ π middleware/ # Express middleware
β βββ π models/ # Mongoose models
β βββ π routes/ # API routes
β βββ π index.js # Server entry point
βββ π public/ # Static assets
βββ π package.json # Dependencies
| Color | Hex | Usage |
|---|---|---|
| π΅ Primary | #0ea5e9 |
Main actions, links, branding |
| π£ Accent | #8b5cf6 |
Highlights, special elements |
| π’ Success | #22c55e |
Positive feedback, completed states |
| π‘ Warning | #f59e0b |
Warnings, pending states |
| π΄ Danger | #ef4444 |
Errors, crisis situations |
| βͺ Neutral | #64748b |
Secondary text, borders |
- Headings: Bold, Modern styling
- Body: Clean, Readable fonts
- Responsive: Scales beautifully across devices
MindCure is fully responsive and optimized for all devices:
| Device | Features |
|---|---|
| π± Mobile | Bottom navigation, touch-friendly controls, hamburger menu |
| π± Tablet | Optimized layouts, touch interface |
| π» Desktop | Full-featured experience with expanded navigation |
POST /api/auth/register # Register new user
POST /api/auth/login # Login user
GET /api/auth/me # Get current user
GET /api/mood # Get mood entries
POST /api/mood # Create mood entry
GET /api/mood/stats # Get mood statistics
GET /api/friends # Get friends list
POST /api/friends/request # Send friend request
PUT /api/friends/:id # Accept/reject request
GET /api/messages/conversations # Get conversations
POST /api/messages # Send message
GET /api/messages/:conversationId # Get messages
GET /api/achievements # Get user achievements
- π JWT Authentication: Secure token-based auth
- π Password Hashing: bcrypt encryption
- π‘οΈ CORS Protection: Configured for production domains
- π Input Validation: Server-side validation with Zod
- π« Rate Limiting: API rate limiting to prevent abuse
- π Privacy First: Minimal data collection
| Service | Number | Description |
|---|---|---|
| π Tele-MANAS | 14416 |
National Mental Health Helpline |
| π Emergency | 112 |
Police/Fire/Ambulance |
| π KIRAN Helpline | 1800-599-0019 |
24/7 Mental Health Support |
| π© Women Helpline | 181 |
Women in distress |
| πΆ CHILDLINE | 1098 |
Child protection |
# Run unit tests
npm run test
# Run with coverage
npm run test:coverage
# Run e2e tests
npm run test:e2e# Install Vercel CLI
npm i -g vercel
# Deploy
vercel --prod- Connect your GitHub repository to Render
- Set environment variables in Render dashboard
- Deploy automatically on push to
main
Live API: https://mindcure-api.onrender.com
We welcome contributions! Please follow these steps:
- Fork the repository
- Create a feature branch
git checkout -b feature/amazing-feature
- Commit your changes
git commit -m 'Add amazing feature' - Push to the branch
git push origin feature/amazing-feature
- Open a Pull Request
- Use ESLint configuration provided
- Follow React best practices
- Write meaningful commit messages
- Add tests for new features
This project is licensed under the MIT License - see the LICENSE file for details.
Important: This platform provides mental health support but is not a substitute for professional medical care. If you're experiencing a mental health emergency, please contact:
- Tele-MANAS: 14416
- Emergency Services: 112
- Google Gemini for AI capabilities
- The open-source community for amazing tools
- Mental health professionals who provided guidance
- All contributors and testers
Made with π for Student Mental Health
