A modern Learning Management System (LMS) designed to streamline the process of online education, offering robust features like course management, user authentication, content delivery, and progress tracking. Built with Next.js, Tailwind CSS, TypeScript, and Go for scalability, flexibility, and performance.
- Course Management: Easily create and organize online courses.
- User Authentication: Secure user login with role-based access (students, instructors, admins).
- Content Delivery: Upload and manage educational resources like videos, documents, and quizzes.
- Progress Tracking: Track student progress with built-in analytics and reporting tools.
- Responsive Design: Optimized for both mobile and desktop use with Tailwind CSS.
- Scalable Architecture: Leverage Go for a performant backend and TypeScript for type-safe development.
- Frontend: Next.js, Tailwind CSS, TypeScript
- Backend: Go, REST API architecture
- Database: PostgreSQL, GORM
- Deployment: Vercel
Ensure you have the following installed:
- Node.js
- Go (Golang)
-
Clone the repository:
git clone https://github.com/fernandonevarez/lms.git
-
Install dependencies:
cd lms pnpm install
-
Start the development server:
pnpm dev
Create a .env
file in the root directory with the same structure as .env.example
. You can copy the contents of .env.example
and replace the values with the appropriate configuration.
Contributions are welcome! Feel free to open an issue or submit a pull request if you have any improvements to the project.
we are using Conventional Commits for commit messages. So Please follow the commit message format.
git commit -m "feat: added new feature"
You can learn more about contributing in the Contribution Guidelines.
This project is licensed under the GNU GPLv3 License. See the LICENSE file for more details.