Smile Again is an innovative mental health support platform that provides anonymous peer support, professional counseling connections, and AI-powered emotional assistance. The platform is designed to create a safe space where users can share their struggles, connect with others facing similar challenges, and track their journey toward better mental well-being.
- MultiLingual AI Chatbot Support: Empathetic conversation partner available 24/7 and talk in 7 indian languages with same emotion
- Anonymous Registration & Authentication: Secure, privacy-focused user accounts
- Chat with Anounymous persons: A user can send friend request to another user and discuss about thier problems
- Community Building: Auto-generated support groups based on problem of user and we generate smile path for bettermet
- Blogs related to smile reason: Users can post blogs related to differet issues and other users can like comment and also connect with author
- Professional Counselor Connection: Direct access to mental health professionals
- Milestone System: Community-wide progress tracking with visual transformations
- Real-time Interactions: Live chat and community discussions
- Stress Level Monitoring: Personalized support recommendations based on user state
- Video demo of our project: [(https://www.youtube.com/watch?v=YKSTFULJbwc)]
- Response of Bot in Hindi:
- Response of Bot in Telugu and Kannada:
- Framework: Flask (Python)
- Database: SQLite (Development) / PostgreSQL (Production)
- Authentication: Flask-Login with session management
- Real-time Communication: Flask-SocketIO
- API Documentation: OpenAPI/Swagger
- Core Chat Model: ModelLake API integration for multilingual empathetic responses
- Language Support: Real-time conversation in multiple languages including:
- English
- Hindi
- Telugu
- Tamil
- Kannada
- Marathi
- Bengali
- Gujarati
- Malyalam
- NLP Processing:
- NLTK for text analysis
- Language detection and automatic translation
- Cultural context awareness
- Sentiment analysis across languages
- Emotion Detection:
- Cross-cultural emotion classification system
- Context-aware emotional response generation
- Cultural sensitivity filters
- Crisis Detection:
- Multi-language pattern-based crisis identification
- Culture-specific crisis intervention protocols
- Region-specific emergency resource recommendations
-
Adaptive Language Processing:
- Automatic language detection and switching
- Preservation of emotional context across translations
- Culture-specific empathy expressions
- Dialect and regional variation awareness
-
Cultural Competency:
- Region-specific mental health approaches
- Culturally appropriate metaphors and expressions
- Local support resource recommendations
- Cultural sensitivity in crisis situations
-
Technical Implementation:
- ModelLake API integration for natural language understanding
- Custom emotion-aware translation pipeline
- Real-time language switching without context loss
- Multilingual conversation history management
-
Response Generation:
- Culture-aware empathetic responses
- Language-specific comfort phrases
- Localized coping strategies
- Regional support resource integration
# ModelLake API Configuration
MODELLAKE_API_KEY=your_api_key
MODELLAKE_MODEL=llama3
MODELLAKE_MAX_TOKENS=300
# Language Support Configuration
DEFAULT_LANGUAGE=en
SUPPORTED_LANGUAGES=en,Te-In,Tl-In,Ml-In,Gj-In,Mr-In,Be-In,Ka-In
TRANSLATION_FALLBACK=en
# Bot Personality Settings
BOT_NAME=Joy
EMPATHY_LEVEL=high
CRISIS_THRESHOLD=0.7
### Security Features
- **Data Encryption**: AES for sensitive data
- **Password Hashing**: Bcrypt
- **Session Management**: Secure cookie handling
- **CORS Protection**: Configured for secure cross-origin requests
## Getting Started π
### Prerequisites
```bash
# Python 3.8+ required
python --version
# Create virtual environment
python -m venv venv
# Activate virtual environment
# For Windows:
venv\Scripts\activate
# For Unix/MacOS:
source venv/bin/activate
##Installation
---bash
# git clone https://github.com/your-username/smile-again.git
cd smile-again
# pip install -r requirements.txt
# cp .env.example .env
# Edit .env with your configuration
# flask db upgrade
python init_db.py # Loads initial data
# flask run
##Project Structure
---bash
#smile-again/
βββ backend/
β βββ activity/
β β βββ __init__.py
β β βββ routes.py
β β βββ utils.py
β βββ auth/
β β βββ __init__.py
β β βββ routes.py
β β βββ utils.py
β βββ blogs/
β β βββ __init__.py
β β βββ routes.py
β β βββ utils.py
β βββ bot/
β β βββ __init__.py
β β βββ routes.py
β β βββ utils.py
β βββ chats/
β β βββ __init__.py
β β βββ routes.py
β β βββ utils.py
β βββ community/
β β βββ __init__.py
β β βββ routes.py
β β βββ utils.py
β βββ friends/
β β βββ __init__.py
β β βββ routes.py
β β βββ utils.py
β βββ games/
β β βββ routes.py
β β βββ utils.py
β βββ meditation/
β β βββ routes.py
β β βββ utils.py
β βββ mood/
β β βββ routes.py
β β βββ utils.py
β βββ smile_journey/
β β βββ __init__.py
β β βββ routes.py
β β βββ utils.py
β βββ stress_assessment/
β β βββ routes.py
β β βββ utils.py
β βββ users/
β β βββ __init__.py
β β βββ routes.py
β β βββ utils.py
β βββ workshops/
β β βββ __init__.py
β β βββ routes.py
β β βββ utils.py
β βββ app.py
β βββ config.py
β βββ create_admin.py
β βββ db_inspector.py
β βββ extensions.py
β βββ models.py
β βββ users.db
βββ frontend/
β βββ src/
β β βββ components/
β β β βββ NavAfterLogin.jsx
β β β βββ Bot_Speech.jsx
β β β ββALL COMPONENTS OF JAVASCRIPT AND CSS ARE IN SRC
β β βββ pages/
β β β βββ ChatBotPage.jsx
β β β βββ ProfilePage.jsx
β β β βββ FriendsPage.jsx
β β β βββ BlogsPage.jsx
β β β βββ SmileJourney.jsx
β β β
β β β
β β β
β β β
β β β
β β β
β β βββ contexts/
β β β βββ AuthContext.jsx
β β β βββ UserContext.jsx
β β βββ utils/
β β β βββ api.js
β β β βββ constants.js
β β β βββ helpers.js
β β βββ App.jsx
β β βββ index.jsx
β β βββ index.css
β βββ package.json
β βββ .env
β βββ .env.example
βββ instance/
βββ README.md
βββ .gitignore
βββ requirements.txt
- POST /auth/register - User registration
- POST /auth/login - User login
- POST /auth/logout - User logout
- POST /bot/chat - Send message to AI bot
- GET /chat/history - Retrieve chat history
- GET /groups - List available groups
- POST /groups - Create new group
- POST /groups//join - Join specific group
- GET /profile - Get user profile
- PUT /profile - Update user profile
- GET /friends - List friends
- POST /friend-request - Send friend request
- Fork the repository
- Create your feature branch (git checkout -b feature/AmazingFeature)
- Commit your changes (git commit -m 'Add some AmazingFeature')
- Push to the branch (git push origin feature/AmazingFeature)
- Open a Pull Request
-All sensitive data is encrypted at rest -Regular security audits -Rate limiting on all endpoints -Input validation and sanitization -XSS and CSRF protection -Regular dependency updates
-Distributed under the MIT License. See LICENSE for more information.
-For support, email [email protected] or join our Slack channel. Acknowledgments π -Open source community -All contributors and supporters