“LearnX” is an online education platform which facilitates students to join online classes, tutors to conduct online classes monitoring students’ activities and parents to track the active participation of students during the class.
Live demo https://learnxy.azurewebsites.net/
Postman Api Documentation https://documenter.getpostman.com/view/20837792/2s83YVHRvw
LearnX offers two products for its users.
- Desktop Application - For students and tutors
- Web Application - For parents and institutes
Desktop application allow conducting online classes. Desktop application has the unique feature where while conducting online classes tutors can identify if any student is using any other application other than the LearnX application.
Web application is for parents and insitutes. Institutes can manage tutors and offer courses through LearnX. Parents can register students through their account and keep track of student learning activities.
- React TypeScript: 16.12.0
- Node JS: 16.17.0
- Express JS: 4.18.1
- MYSQL: MariaDB 10.4.24
- Electron JS: 19.0.1
- Twilio: 3.77.1
- Prisma: 4.3.1
- Docker: 20.10.17
List the ready features here:
- Teachers can track if students are using any other application apart from LearnX desktop application
- Analytics
- Transaction processing
- Chat component
- Online Streaming component
.
├── .github # Contain Github actions
├── server # Contain Server source file
├── twilio-video-app-react-new # Desktop app source file
└── web-app # Contain web-app source file
Clone down this repository. You will need node and npm installed globally on your machine.
Clone the repository
git clone https://github.com/TeachMe-Project/Main_Project.git
Go to each of the 3 directories web-app, server and twilio-video-app-react-new and carry out the following steps:
cd web-app # For Web app
cd twilio-video-app-react-new # For Desktop app
cd server # For Server
Installation:
npm install
Before Start the Server run below commands:
npx prisma db pull
npx prisma generate
To Start Application:
npm run start # For Web app
npm run destop # For Desktop app
npm run serve # For Server
To Visit Web App & Server:
http://localhost:3000/ # For Web app
http://localhost:8081/ # For Server
Project is: in progress
Room for improvement:
- Enhance the number of participants that can attend an online class
- Track student activity categorized by each application
- Machine learning model to detect participant behavior
- Use of a realtime database to track client's applications
Want to contribute? Great!
To fix a bug or enhance an existing module, follow these steps:
Fork the repo
Create a new branch (git checkout -b improve-feature)
Make the appropriate changes in the files
Add changes to reflect the changes made
Commit your changes (git commit -am 'Improve feature')
Push to the branch (git push origin improve-feature)
Create a Pull Request
- Maneth Wijetunga
- Jonathan Dass
- Bhashitha Ranasinghe
- Prasad Lakshan
- Avishka Hettiarachchi