A comprehensive learning assistant application featuring real-time chat, AI integration (Gemini), document management, and more.
- Framework: React.js (Vite)
- Styling: Tailwind CSS
- Routing: React Router DOM
- Real-time: Socket.io-client
- Document Viewing: React-pdf
- Runtime: Node.js
- Framework: Express.js
- Database: MongoDB (Mongoose)
- Real-time: Socket.io
- Storage: Cloudinary
- AI Integration: Google Generative AI (Gemini)
- Authentication: JWT & bcryptjs
Before you begin, ensure you have the following installed and set up:
- Node.js (v18 or higher recommended)
- npm or yarn
- MongoDB instance (local or MongoDB Atlas)
- Cloudinary account (for file uploads)
- Google Gemini API key (for AI features)
Follow these steps to get your development environment set up and running locally.
git clone https://github.com/Anirudh0465/Learning-Assistant--OJT-.git
cd Learning-Assistant--OJT-- Navigate to the backend directory:
cd backend - Install dependencies:
npm install
- Set up environment variables:
Create a
.envfile in thebackenddirectory based on the.env.examplefile:PORT=3400 NODE_ENV=development MONGO_URI=your_mongodb_connection_string JWT_SECRET=replace_with_a_long_random_secret JWT_EXPIRES_IN=7d CLOUDINARY_CLOUD_NAME=your_cloudinary_cloud_name CLOUDINARY_API_KEY=your_cloudinary_api_key CLOUDINARY_API_SECRET=your_cloudinary_api_secret GEMINI_API_KEY=your_gemini_api_key GEMINI_MODEL=gemini-2.5-flash-lite CLIENT_URL=http://localhost:5173
- Start the backend development server:
npm run dev
- Open a new terminal window/tab and navigate to the frontend directory:
cd Frontend - Install dependencies:
npm install
- Set up environment variables:
Create a
.envfile in theFrontenddirectory based on the.env.examplefile:VITE_API_BASE_URL=http://localhost:3400/api
- Start the frontend development server:
npm run dev
Once both servers are successfully running:
- The Frontend application will be accessible at
http://localhost:5173 - The Backend API will be running at
http://localhost:3400