An Innovative learning Platform Built On Top Of NodeJS That Makes Skill Acquisition An Enjoyable Journey.
- Key Features
- Diagrams
- Used Packages
- CI/CD Pipeline
- Team Members
Components |
---|
![]() |
Features | Description |
---|---|
Authentication and Authorization System | This feature provides users with login and logout functionality to access the system. |
Scheduling Live Sessions | Empower users to request mentorship sessions and provide the option to either accept or decline them. |
Real-Time Matching System | A Real-Time matching system that connects the two most pertinent individuals in a live session |
Optimized Feed | The platform's feed revolves around user-specific data, ensuring that each user receives personalized mentor suggestions and matching experiences |
Here are several diagrams that we employed to document and elucidate some of our fundamental features.
Login sequence | Session Making Sequence |
---|---|
![]() |
![]() |
Onboarding Sequence | Chatting Sequence |
---|---|
![]() |
![]() |
Database ERD | System Architecture |
---|---|
![]() |
![]() |
Before using the API, you need to set the variables in Postman depending on your environment (development or production). Simply add:
- {{URL}} with your hostname as value (Eg. http://127.0.0.1:3000 or http://www.example.com)
- {{password}} with your user password as value.
For more info check API Documentation on Postman 👉 : Skill-Sync API Documentation.
Skill-Sync will be built using the following Technologies and packages:
- Node.js: for server-side programming.
- Express: for building the backend API.
- MongoDB: for storing users-generated data.
- MongoDB Atlas - for remotely deploy MongoDB database
- redis: in-memory data store for users in matching process
- Cloudinary: for image hosting and management.
- Firebase - for pushing notification
- Postman - for API testing
General Packages |
---|
![]() |
Security Packages | Development Packages |
---|---|
![]() |
![]() we utilize ESLint and Prettier for formatting and style. |
- We have established a continuous deployment pipeline by connecting our two primary branches (develop and master) to Render serverless applications. This setup ensures that we maintain two server instances, the main and the backup, both of which receive a new deployment with each merge into their respective branches..