Rafiki AI is a comprehensive student support platform designed to provide personalized guidance, academic planning, career advice, and wellbeing resources for university students.
- AI-Powered Chat Interface: Natural conversation with contextual understanding of student needs
- Authentication System: Secure login with Google, LinkedIn, or email/password
- Responsive Design: Fully responsive interface that works on all devices
- Career Assessment Tools: Discover suitable career paths based on interests and strengths
- Job Market Insights: View industry trends, job availability, and salary information
- Resume & Interview Preparation: Tools to enhance job application readiness
- Educational Resources: Access courses and certifications relevant to career goals
- Skill Development Plans: Personalized roadmaps for developing professional skills
- Emotional Support: 24/7 AI counseling for stress, anxiety, and emotional challenges
- Wellbeing Assessment: Evaluate mental and emotional health through guided assessments
- Stress Management Techniques: Evidence-based strategies for managing academic pressure
- Mindfulness Practices: Guided meditation and mindfulness exercises
- Crisis Resources: Access to emergency resources and professional support options
- Mood Tracking: Monitor emotional patterns over time
/
(Index/Login): Landing page for guests, handling authentication./dashboard
: Main dashboard for logged-in users./chat
: Interface for interacting with the AI assistant./career
: Provides career assessment tools, job market insights, and resources./wellbeing
: Offers wellbeing assessments, stress management techniques, and support resources./assessments
: Lists available career and wellbeing assessments./assessments/:assessmentId
: Page for taking a specific assessment./assessment-results
: Displays the results of completed assessments.
- Frontend: React, TypeScript, Vite
- Styling: TailwindCSS, shadcn/ui
- Authentication: Supabase Auth
- Database: Supabase
- AI Integration: Custom AI models for conversation and sentiment analysis
- Node.js (v18 or higher)
- npm or yarn package manager
- Supabase account (for authentication and database)
- AI service API keys (if deploying your own instance)
-
Clone the repository
git clone <repository-url> cd rafiki-ai
-
Install dependencies
npm install # or yarn
-
Configure environment variables Create a
.env
file in the root directory with the following variables:VITE_SUPABASE_URL=your_supabase_url VITE_SUPABASE_ANON_KEY=your_supabase_anon_key VITE_AI_API_KEY=your_ai_service_key
-
Run the development server
npm run dev # or yarn dev
-
Open http://localhost:8080 in your browser to view the application
- Create a Supabase project at supabase.com
- Enable authentication providers (Email, Google, LinkedIn) in the Auth settings
- Create required database tables:
profiles
: Store user profile informationchats
: Store chat history (optional)
- Set up Row Level Security policies for data protection
- Configure authentication redirect URLs in your Supabase project settings
The application is configured for easy deployment to multiple platforms:
-
Automatic Deployment: Connect your GitHub repository to Netlify for automatic deployments
- Netlify will detect the
netlify.toml
configuration file - Environment variables are pre-configured in the
netlify.toml
file
- Netlify will detect the
-
Manual Deployment: Use the Netlify CLI
# Install Netlify CLI if you haven't already npm install -g netlify-cli # Login to your Netlify account netlify login # Deploy to Netlify npm run deploy:netlify
-
Automatic Deployment: Connect your GitHub repository to Vercel for automatic deployments
- Vercel will detect the
vercel.json
configuration file - Environment variables are pre-configured in the
vercel.json
file
- Vercel will detect the
-
Manual Deployment: Use the Vercel CLI
# Install Vercel CLI if you haven't already npm install -g vercel # Login to your Vercel account vercel login # Deploy to Vercel npm run deploy:vercel
- The repository is already configured with GitHub Actions for automated deployment
- See the
.github/workflows/ci-cd.yml
file for configuration details
- Configure DNS settings to use your own domain with any of the above platforms
- Follow the platform-specific instructions for adding a custom domain
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add some amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
Rafiki AI Team
For support, email support@rafiki-ai.com or create an issue in this repository.