Logo Lanfrica

ismaelaboud/Swahili-Learn

Domaine:

natural language processingeducation

Type de record:

software
Créateur:
ism
Hôte:
A modern, feature-rich online learning platform designed to streamline educational content creation, delivery, and tracking. Built with cutting-edge web technologies to provide an intuitive and interactive learning experience. # Learning Management System (LMS) A comprehensive online learning platform built with Next.js, Express.js, and PostgreSQL. ## Features - Course Management - Content Creation (Text, Video, Quiz) - Student Progress Tracking - Rich Text Editor - File Upload Support - Interactive Quizzes ## Tech Stack ### Frontend - Next.js 14 - React - TypeScript - Tailwind CSS - Shadcn/UI - TipTap Editor - UploadThing ### Backend - Express.js - PostgreSQL - Prisma ORM - JWT Authentication - TypeScript ## Prerequisites - Node.js 18+ - PostgreSQL 14+ - npm or yarn ## Installation 1. Clone the repository: ```bash git clone [your-repo-url] cd lms_system ``` 2. Install dependencies: ```bash # Install backend dependencies cd backend npm install # Install frontend dependencies cd ../frontend npm install ``` 3. Set up environment variables: Backend (.env): ``` DATABASE_URL="postgresql://[user]:[password]@localhost:5432/lms_db" JWT_SECRET="your-secret-key" PORT=3001 ``` Frontend (.env.local): ``` NEXT_PUBLIC_API_URL="localhost" ``` 4. Initialize the database: ```bash cd backend npx prisma generate npx prisma db push ``` ## Running the Application 1. Start the backend server: ```bash cd backend npm run dev ``` 2. Start the frontend development server: ```bash cd frontend npm run dev ``` The application will be available at: - Frontend: localhost - Backend: localhost ## Contributing 1. Fork the repository 2. Create your feature branch (`git checkout -b feature/AmazingFeature`) 3. Commit your changes (`git commit -m 'Add some AmazingFeature'`) 4. Push to the branch (`git push origin feature/AmazingFeature`) 5. Open a Pull Request ## License This project is licensed under the MIT License - see the LICENSE file for details.

Languages