A Node.js/Express project for live teacher-student integrated session management using sockets, wherein the student can write, compile, run and post codes and the teacher can edit the codes live.
This application was designed in VCET Hackathon 2019 in 30 hours and won the 3rd prize. This was also used to represent our college, D.J. Sanghvi, in Inter-College Avishkar Research Convention 2019-20.
NOTE: This application was later built for production for deployment in the college.
For more details click the link below
Callback github.com/callback
- Frontend developed using vanilla HTML, CSS and JS
- Backend developed using Node.js/Express
- Data stored in MongoDB
- Live code interaction done using socket.io
- User session management done using passport.js
- Compiler provided by compilex
- Editor provided by Ace
- Developed using goorm IDE
Adnan Hakim github.com/adnanhakim
Ali Abbas Rizvi github.com/rizvialiabbas
Arsh Shaikh github.com/arshshaikh06
Bhavesh Singh github.com/bhaveshsingh0206
- Teachers can create rooms using sockets
- Students can join rooms using a password (For now it is 123456)
- Once student has joined a room, he/she can write code using an editor
- The student can also compile the code in an online editor
- Teacher can view the code of any student live
- Teacher can also edit the code of any student live
- The student can then post the code in a dashboard for all other students to see
- Other students can also download the code and run it locally
- Students can send messages to teachers if they are not online
- Teachers can view these messages and reply to them
- Student can also view all his codes in his profile
- Dashboard also provides statistics to users such as
- No of posts of the day
- No of posts of that user
To download all the necessary packages
npm install
Profile information and statistics on the left, posted codes in the middle and sending offline messages(notifications) to the teachers on the right
Only teachers can create rooms, and students get information about each room and can join the room by entering the password
Student can edit, compile, run and post only their own code
Teacher can view the online students on the left and can view and edit their code live
Copyright (c) 2019 Team Void
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.