Talk to Senti, Feel a Little Lighter. SentiAI is an AI-powered emotional health companion designed to provide supportive conversations, mindfulness guidance, and mental wellness tools.
- 🤖 AI-Powered Conversations: Chat with Senti, a warm and empathetic AI companion
- 🎯 Mental Health Support: Mood check-ins, mindfulness exercises, and self-care guidance
- 🔊 Text-to-Speech: Listen to AI responses with built-in speech synthesis
- 💬 Session Management: Create and manage multiple chat sessions
- 🌙 Modern UI: Beautiful, responsive interface with glassmorphism design
- 🔐 GitHub Authentication: Secure login with GitHub OAuth
- 🎮 Discord Integration: Join our supportive community
- 📱 Mobile Responsive: Works seamlessly on all devices
- Framework: Next.js 15 with React 19
- UI Library: Chakra UI v3 with custom theming
- Styling: Tailwind CSS v4
- Animations: Framer Motion & GSAP
- State Management: Zustand
- GraphQL Client: Apollo Client
- Icons: React Icons
- Markdown: React Markdown with remark-gfm
- Framework: NestJS with GraphQL
- Database: MongoDB with Mongoose
- AI Integration: OpenAI GPT-4.1
- Authentication: JWT with GitHub OAuth
- API: Apollo Server
- Validation: Zod schemas
- Node.js 18+ and npm
- MongoDB database
- OpenAI API key
- GitHub OAuth App credentials
-
Clone the repository
git clone https://github.com/your-username/senti-ai.git cd senti-ai -
Install frontend dependencies
cd senti-app npm install -
Install backend dependencies
cd ../senti-graphql npm install -
Environment Setup
Create
.envfile insenti-graphql/:MONGODB_URI=your_mongodb_connection_string OPENAI_API_KEY=your_openai_api_key JWT_SECRET=your_jwt_secret GITHUB_CLIENT_ID=your_github_client_id GITHUB_CLIENT_SECRET=your_github_client_secret
-
Start the development servers
Backend (GraphQL API):
cd senti-graphql npm run start:devFrontend (Next.js):
cd senti-app npm run dev -
Access the application
- Frontend: http://localhost:3000
- GraphQL Playground: http://localhost:4000/graphql
- Mood Check-ins: Regular emotional state assessments
- Mindfulness Tools: Breathing exercises, grounding techniques, body scan meditations
- Journal Prompts: Guided reflection and emotional processing
- Daily Affirmations: Positive reinforcement and self-care reminders
- Crisis Detection: Automatic detection and appropriate resource provision
- Powered by OpenAI GPT-4.1, Deepseek-v & Meta Llama 4 with specialized mental health instructions
- Warm, empathetic, and non-judgmental responses
- Context-aware conversations across sessions
- Safety protocols for crisis situations
- Session Management: Create, manage, and revisit conversations
- Text-to-Speech: Accessibility feature for audio consumption
- Responsive Design: Optimized for desktop, tablet, and mobile
- Dark Theme: Eye-friendly interface with glassmorphism effects
senti-ai/
├── senti-app/ # Next.js Frontend
│ ├── src/
│ │ ├── app/ # App Router pages
│ │ ├── components/ # Reusable UI components
│ │ └── gql/ # Generated GraphQL types
│ ├── public/ # Static assets
│ └── package.json
├── senti-graphql/ # NestJS Backend
│ ├── src/
│ │ ├── messages/ # Message handling & AI integration
│ │ ├── sessions/ # Chat session management
│ │ ├── users/ # User authentication & management
│ │ └── main.ts # Application entry point
│ └── package.json
└── README.md
npm run dev # Start development server
npm run build # Build for production
npm run start # Start production server
npm run lint # Run ESLint
npm run codegen # Generate GraphQL typesnpm run start:dev # Start development server with watch
npm run build # Build for production
npm run start:prod # Start production server
npm run test # Run tests
npm run lint # Run ESLintWe welcome contributions! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.
- 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
- Crisis Protocol: Automatic detection of crisis situations with appropriate resource provision
- Data Privacy: User conversations are handled with strict privacy measures
- No Medical Advice: Senti provides emotional support but is not a replacement for professional therapy
- Secure Authentication: GitHub OAuth integration for secure user management
- Discord Server: Join our community
- Issues: Report bugs or request features via GitHub Issues
- Documentation: Comprehensive guides in the
/docsfolder
This project is licensed under the MIT License - see the LICENSE file for details.
Developed with ❤️ by DevChiefs - 2025
Disclaimer: SentiAI is designed to provide emotional support and is not a substitute for professional mental health treatment. If you're experiencing a mental health crisis, please contact your local emergency services or a mental health professional.
Crisis Resources:
- Philippines: National Mental Health Crisis Hotline - 1553 (toll-free) or 0966-351-4518
- International: Contact your local emergency services or visit findahelpline.com
