
Eray Share - Backend Development
Backend development for Eray Share, an educational platform designed to connect students and teachers through modern and efficient tools.
Project Overview
Eray Share is a collaborative educational platform developed by our team, Eray. During my internship, I was responsible for creating and managing the backend. My role involved designing a robust database, configuring API routes, and ensuring smooth functionality through thorough testing.
Technical Development
- Main Technology: Strapi, a headless CMS that accelerates backend development with integrated features (routes, controllers, and content management).
- Database: SQLite for lightweight database management, suitable for development environments.
- API: I created, tested, and validated all necessary routes (GET, POST, PUT, DELETE) using simple JavaScript 'fetch()' requests displayed in a basic HTML interface.
- Deployment: The project was deployed on Render's free tier, which requires manual database updates whenever changes are made.
Collections
The following collections were created and managed within Strapi:
- Users: Stores information about users, including roles (admin, student, teacher), authentication, and profile data..
- Courses: Contains educational content such as course titles, descriptions, and materials.
- Bills: Stores the price of the course, the date of payement, the amount payed for the course, the state of it wether paid, pending, or not paid, and the date and the method used for the payement.
- Evalutation: Stores student grades for assignments and courses, allowing for easy retrieval and updates.
Highlights
- Speed and Efficiency through Strapi, which eliminates the need for traditional setups like Node.js + Express or PHP.
- Simple Testing with lightweight tools, without needing a complex framework.
- Source Code Available on GitHub.
Conclusion
This project allowed me to solidify my backend development skills while exploring modern tools like Strapi. I learned how to design a performant, scalable API and ensure reliable deployment.