This a practice Website.
This website is using ejs, html, css, bootstrap, font-awsome and js to display a good looking frontend which can be dinamicaly changed. The backend uses node.js with express for easy set up, mongoose for connection with mongoDB database, multer for easy file uploading, nodemailer for emailing, socket.io for real time communication between backend and frontend, helmet for security, uniquid for unique code generation and compression for making the website faster.
Acount Types
- Admin
- Teacher
- Student
Admin Account Allowances
- Admins can change/create/delete teacher, student and admin account.
- Admins can create classes.
- Admins can added teachers and students to classes.
- Admins can add assignments to classes, they can upload files, notes and meet codes.
- Admins search for accounts and classes.
- Admins can view people already added in a class.
- Admins can view classes they are teaching in.
Teacher Account Allowances
- Teachers can change/create/delete student account.
- Teachers can create classes.
- Teachers can added teachers and students to classes.
- Teachers can add assignments to classes, can upload files, notes and meet codes.
- Teachers search for accounts and classes.
- Teachers can view people already added in a class.
- Teachers can view classes they are teaching in.
Student Account Allowances
- Students can view the classes thay are in.
- Students can view people already added in a class.
- Students can view assignments.
Genral Guidlines
- The only way to delete/edit any type of account or classes is through the search box.
- On the creation of a student account, an email with the students account details will be spent to the provided email address.
- Assignments can not be edited or deleted
- Title is needed in every assignments
- Download Code
- Run command npm install
- Make
techer
folder in mongoDB with collectionteachers
- Add an admin account in the collection, use the syntax :
{
Admin : true,
t_Id : "8g086bdkkpjtwyb9",
Name : // enter admin name,
Email : "info@coderunner.in",
Username : // enter admin username,
Password : // enter admin password
}
- Run command npm start
- compression
- ejs
- express
- helmet
- mongoose
- multer
- nodemailer
- socket.io
- uniqid
Language | Lines Of Code | Total |
---|---|---|
EJS | 120 + 18 + 50 + 20 + 108 + 84 + 76 + 95 + 112 + 31 + 48 + 21 + 2 | 785 |
Backend JavaScript | 171 + 75 + 59 + 27 + 154 + 60 + 135 + 11 + 173 + 65 + 208 + 40 | 1178 |
Frontend JavaScript | 5 + 123 + 128 + 49 + 21 + 109 | 435 |
HTML | 45 | 45 |
CSS | 6 + 71 + 72 + 34 + 34 + 106 | 323 |
MarkDown | 88 | 88 |
Grand Total | 785 + 1178 + 435 + 45 + 323 + 88 | 2854 |
This table excludes the module/auto generated code