DEV Community

Cover image for Let's create an Opensource Headless E-learning using Symfony
Ramzi Issiakhem
Ramzi Issiakhem

Posted on

Let's create an Opensource Headless E-learning using Symfony

Hello Everyone, let me just present myself... we have a long way together to build The Headless E-Learning in Symfony 🔥

Who Are you ?

My name is Issiakhem Mohamed Ramzi, 22, a passionate full-stack software engineer, for being passionate i really am, I started computer science at 14 YO with Java and POO, what a mess...
Otherwise, I build websites, Web applications and I'm starting my path on the OpenSource World !!

What are you doing here ?

I wanna contribute to the community, especially to the opensource community, improve my skills and of course my network, you know... Hahaha

The Devlog Serie

Now let's talk business, during this series of Devlogs, I will share with you the process of building an opensource project, it's my first time doing it, I count on your help and contributions 😉

What you will find here:

  • The Project's ambitions evolution
  • The Critical thinking behind important decisions
  • The Design and conceptual study
  • The functionalities implementation
  • The Obstacles and how we surpass them
  • Some Feedback from the community

The Project Story !

Finally after a lot of blabla, let's start introducing the Project, SymLearn ( Still a beta name ), is The Headless Opensource E-Learning using Symfony, I recently has a freelance project for the same kind of application and said to myslef:

Ramzi, is there any opensource project for my need ?

And after some research, I found that, there is solutions but not using Symfony or that are not how I want, that's too bad 😏

The Project's Ambitions

Sky is your limit

That's some good introduction to talk about the SymLearn ambition and functionalities, we aim to make the most efficient, easy to use and deploy headless e-learning in Symfony !
In few clicks, you will be able to use a complete solution to manage your backend.
What we want is:

  • Extensibility: Capability to add new features easily.
  • Usability: Ease of use and user-friendly interface.
  • Modularity: Different components and modules activated on demand.
  • Documentation: Comprehensive and clear documentation for developers and users.
  • Flexibility: Easy to customize and enhanced flexibility.
  • Security & Authentication: A complete security system tailored to your needs
  • Continuous Integration/Continuous Deployment (CI/CD): Automated processes for code integration and deployment.
  • Testing: Rigorous and automated testing to ensure code quality.

The project functionalities:

In this part, we'll take a look at the core functionalities that will be available on SymLearn :

  • User Management: A complete user management system ( authentication, authorization, profile, courses overview, rbac, progress... )

  • Course Management: Manage the modules,courses,chapters and lessons structure.

  • Workspace and groups: Create workspace with predefined groups and assign courses according to the group and the workspace.

  • Assesment and evaluation: Create Quizzes,exams, automatic and manual grading.

  • Tracking & Reporting: Track the completion, attendance and progression for students and courses, create completion certificates

  • Gamification: Badge and achievements system, score systems with leaderboards.

What's Next ?

All of this can not be done as a solo developer, that's when I need your help to make it real ( I was writing "WE" during the post but yeah, I'm still solo 😔
Feel free to comment or ask any questions you have in mind !

If you've read this far, I'm sure you're interested in the project. Join our Discord server to stay in touch! 😁

Top comments (0)