⚠️ This project is currently under active development
Features may be incomplete or subject to change. Please report any issues you encounter.
Study Helper is a modern AI-powered learning assistant built with Next.js. It provides students with intelligent tools to enhance their academic performance through interactive chat, voice commands, and smart scheduling.
- 🤖 AI Chat Assistant - Get instant help with your studies using Google's Gemini AI
- 🎙️ Voice Assistant - Hands-free interaction with voice commands
- 📅 Smart Scheduler - Plan your study sessions intelligently
- 🌓 Dark/Light Mode - Comfortable viewing in any environment
- 🔐 Authentication - Secure user accounts with NextAuth.js
- 📱 Responsive Design - Works seamlessly on all devices
- Advanced analytics and progress tracking
- Enhanced AI capabilities
- Calendar integrations
- Study group features
- Mobile app companion
- Node.js 18.0 or later
- pnpm (recommended) or npm
- MongoDB database
- Google Gemini AI API key
-
Clone the repository
git clone <repository-url> cd study-helper/client
-
Install dependencies
pnpm install # or npm install
-
Set up environment variables
cp .env.example .env.local
Configure the following variables in
.env.local
:NEXTAUTH_SECRET=your_nextauth_secret NEXTAUTH_URL=http://localhost:3000 MONGODB_URI=your_mongodb_connection_string GEMINI_API_KEY=your_google_gemini_api_key CLOUDINARY_CLOUD_NAME=your_cloudinary_cloud_name CLOUDINARY_API_KEY=your_cloudinary_api_key CLOUDINARY_API_SECRET=your_cloudinary_api_secret
-
Run the development server
pnpm dev # or npm run dev
-
Open your browser Navigate to http://localhost:3000
- Framework: Next.js 15.3 with App Router
- Styling: Tailwind CSS + shadcn/ui components
- Authentication: NextAuth.js
- Database: MongoDB with Mongoose
- AI Integration: Google Gemini AI
- Animations: Framer Motion
- File Upload: Cloudinary
- Language: TypeScript
- Package Manager: pnpm
src/
├── app/ # Next.js App Router pages
│ ├── api/ # API routes
│ ├── auth/ # Authentication pages
│ ├── chat/ # AI Chat interface
│ ├── dashboard/ # User dashboard
│ ├── profile/ # User profile
│ ├── scheduler/ # Study scheduler
│ └── voice/ # Voice assistant
├── components/ # Reusable UI components
│ ├── ai/ # AI-related components
│ ├── common/ # Shared components
│ ├── features/ # Feature-specific components
│ └── ui/ # shadcn/ui components
├── lib/ # Utility libraries
│ ├── ai/ # AI service integrations
│ ├── hooks/ # Custom React hooks
│ └── models/ # Database models
└── types/ # TypeScript type definitions
pnpm dev
- Start development server with Turbopackpnpm build
- Build for productionpnpm start
- Start production serverpnpm lint
- Run ESLint
Feature | Status | Notes |
---|---|---|
Authentication | ✅ Complete | NextAuth.js integration |
AI Chat | ✅ Complete | Gemini AI integration |
Voice Assistant | 🚧 In Progress | Basic functionality implemented |
Smart Scheduler | 🚧 In Progress | Core features working |
Dashboard | ✅ Complete | Real-time data integration |
Profile Management | ✅ Complete | Basic user settings |
Mobile Responsiveness | ✅ Complete | Fully responsive design |
As this project is under development, contributions are welcome! Please:
- Fork the repository
- Create a feature branch
- Make your changes
- Test thoroughly
- Submit a pull request
- Voice assistant may require browser permissions
- Some features may not work in older browsers
- Database migrations are manual during development
If you encounter any issues or have questions:
- Check the GitHub issues
- Review the documentation
- Contact the development team
This project is currently under development and not yet licensed for public use.
Note: This is an active development project. Features and documentation are subject to change.