Skilloria is a full-featured e-learning platform built with the MERN (MongoDB, Express, React, Node.js) stack and TypeScript. It enables users to learn from a wide range of courses as well as contribute by creating and uploading their own courses. The platform focuses on flexibility, scalability, and ease of use, making it ideal for both learners and educators.
- Watch video lessons and access course materials.
- Interactive user interface for an optimized learning experience.
- Upload new courses with rich metadata (title, description, category, etc.).
- Add multiple lessons, including video content and resources.
- Secure user authentication and authorization.
- Responsive design for seamless usage across devices.
- React: For building the user interface.
- TypeScript: Ensures type safety and better developer experience.
- React Router: For navigation and routing.
- Axios: For API communication.
- Tailwind CSS: For styling the application.
- Node.js: Runtime environment for server-side logic.
- Express: Framework for building RESTful APIs.
- MongoDB: NoSQL database for storing user and course data.
- JWT: For secure user authentication.
- Cloudinary: For handling image and video uploads.
- Node.js and npm installed.
- MongoDB installed and running.
- Cloudinary account for handling media uploads (optional).
-
Clone the repository:
git clone https://github.com/bhavishya2601/skilloria.git cd skilloria
-
Install dependencies for both frontend and backend:
cd frontend npm install cd ../backend npm install
-
Set up environment variables: Create a
.env
file in thebackend
directory and add the following:PORT= FRONTEND_URL= MONGODB_URI= SESSION_SECRET= EMAIL= EMAIL_PASSWORD= SALT_ROUNDS= JWT_SECRET= GOOGLE_CLIENT_ID= GOOGLE_CLIENT_SECRET= GOOGLE_REDIRECT_URL=
-
Start the development servers:
# In one terminal, start the backend: cd backend npm run dev # In another terminal, start the frontend: cd frontend npm run start
-
Open your browser and navigate to
http://localhost:3000
.
skilloria/
├── frontend/ # React application
├── backend/ # Express server and API logic
├── README.md
└── LICENSE
We welcome contributions to Skilloria! If you have an idea or want to fix a bug, feel free to:
- Fork the repository.
- Create a new branch for your feature or fix.
- Submit a pull request with detailed information about your changes.
This project is licensed under the MIT License. See the LICENSE file for details.
For any questions or feedback, feel free to reach out:
- Email: [email protected]
- GitHub: bhavishya2601