Your supportive AI friend for emotional wellness, mood tracking, journaling, and coping strategies.
Beautiful watercolor-inspired home page with daily mood check-in, affirmations, and quick access to coping tools.
Easy access to breathing exercises and zen sounds for instant calm.
- Natural, empathetic conversations powered by OpenAI/Gemini
- Emotion-aware responses
- Contextual memory per user
- Crisis detection & safe escalation
- Daily mood check-ins with emojis
- Weekly & monthly emotional insights
- Mood trends visualization
- Emotion pattern detection
- Free-text journaling
- AI-powered summaries and reflections
- Emotion tagging
- Writing prompts
- Breathing exercises (4-7-8, Box Breathing)
- Grounding techniques (5-4-3-2-1)
- Mindfulness exercises
- Daily affirmations
- Secure authentication (JWT)
- Delete data anytime
- Crisis resources (India helplines)
- No diagnosis or medical advice
- Framework: Django 4.2 + Django Rest Framework
- Authentication: JWT (SimpleJWT)
- Database: SQLite (dev) / PostgreSQL (prod)
- AI: OpenAI API / Google Gemini API
- Real-time: Django Channels
- Framework: React 18 + TypeScript
- Build Tool: Vite
- Styling: Tailwind CSS
- Animations: Framer Motion
- Charts: Recharts
- State: Zustand
- Routing: React Router v6
dost.ai/
βββ backend/
β βββ dost/ # Django project settings
β βββ users/ # User authentication & profiles
β βββ chat/ # AI chat functionality
β βββ mood/ # Mood tracking
β βββ journal/ # Journaling feature
β βββ coping/ # Coping tools & exercises
β βββ manage.py
β βββ requirements.txt
β βββ seed_data.py # Initial data for coping tools
βββ frontend/
β βββ src/
β β βββ components/ # Reusable UI components
β β βββ pages/ # Page components
β β βββ services/ # API service functions
β β βββ store/ # Zustand state management
β β βββ types/ # TypeScript types
β β βββ App.tsx
β β βββ main.tsx
β βββ public/
β βββ package.json
β βββ vite.config.ts
βββ README.md
- Python 3.10+
- Node.js 18+
- npm or yarn
# Navigate to backend
cd backend
# Create virtual environment
python -m venv venv
# Activate virtual environment
# Windows:
venv\Scripts\activate
# macOS/Linux:
source venv/bin/activate
# Install dependencies
pip install -r requirements.txt
# Create environment file
copy .env.example .env # Windows
# cp .env.example .env # macOS/Linux
# Edit .env and add your API keys
# GEMINI_API_KEY=your-gemini-api-key
# or
# OPENAI_API_KEY=your-openai-api-key
# Run migrations
python manage.py migrate
# Create superuser (optional)
python manage.py createsuperuser
# Seed coping tools data
python manage.py shell < seed_data.py
# Run server
python manage.py runserver# Navigate to frontend
cd frontend
# Install dependencies
npm install
# Run development server
npm run dev- Frontend: http://localhost:5173
- Backend API: http://localhost:8000/api
- Admin Panel: http://localhost:8000/admin
SECRET_KEY=your-secret-key
DEBUG=True
ALLOWED_HOSTS=localhost,127.0.0.1
# AI Provider (openai or gemini)
AI_PROVIDER=gemini
OPENAI_API_KEY=your-openai-key
GEMINI_API_KEY=your-gemini-key
# CORS
CORS_ALLOWED_ORIGINS=http://localhost:5173POST /api/auth/register/- Register new userPOST /api/auth/login/- Login (returns JWT)POST /api/auth/refresh/- Refresh tokenGET /api/auth/profile/- Get user profilePOST /api/auth/onboarding/- Complete onboarding
GET /api/chat/conversations/- List conversationsPOST /api/chat/send/- Send message & get AI responseDELETE /api/chat/conversations/{id}/- Delete conversation
GET /api/mood/entries/- List mood entriesPOST /api/mood/entries/- Create mood entryGET /api/mood/stats/- Get mood statisticsGET /api/mood/today/- Get today's mood
GET /api/journal/entries/- List journal entriesPOST /api/journal/entries/- Create entryGET /api/journal/prompt/- Get writing prompt
GET /api/coping/tools/- List coping toolsGET /api/coping/affirmation/- Get daily affirmationGET /api/coping/recommend/- Get recommended tool
- Primary: Indigo (#6366f1)
- Lavender: Purple (#a855f7)
- Calm Blue: #89CFF0
- Calm Green: #98D8C8
- Cream: #FFF8E7
- Font: Inter (Google Fonts)
- Rounded, friendly UI elements
If someone expresses crisis thoughts, the app provides:
- iCall: 9152987821
- Vandrevala Foundation: 1860-2662-345
- NIMHANS: 080-46110007
- AASRA: 9820466726
Dost AI is not a replacement for professional mental health care. It is designed to be a supportive companion, not a therapist. If you're experiencing a mental health emergency, please contact a professional or call emergency services.
MIT License - See LICENSE file for details.
- Fork the repository
- Create your 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
Made with π for mental wellness.

