A website for Result Viewing / Verifying
KEBER allows you to have different roles such as Admin, Student or Verifier
- Uploads results of the students
- View/Download the result
- Verify the authencity of the result
- HTML
- Forms
- EJS
- Template Engine for reusing HTML
- CSS
- Responsive Design
- Grids, Flexbox
- JavaScript
- Everything :)
- Scroll Magic
- Split Screen Parallax
- FontAwesome
- Icons
- NodeJS
- Creating own server side code
- Express
- Enhancing NodeJS
- Multer
- File Upload / Serving
- Nodemailer
- Sending Emails
- MySQL
- Storing the data
- The screenshots can be found here Keber-screenshots
- After the failed attempt to get started with Web - Devlopment during Web Month, we decided to give it another try and add Web Development as anothe r skill in our skillsket
To get a local copy up and running follow these simple example steps.
The softwares that must be present on users PC to efficiently run this project
-
NodeJS
https://nodejs.dev/download
-
MySQL
https://dev.mysql.com/downloads/mysql/
-
Clone the repo
git clone https://github.com/anshkush92college/demo.git
-
Go to Elephant SQL and create your database there
CREATE TABLE newsletter ( emails VARCHAR(255) PRIMARY KEY ); CREATE TABLE contact_us ( name varchar(255), email varchar(255), phone_number varchar(11), subject varchar(1000), message varchar(2000) ); CREATE TABLE admin_login ( email varchar(255) PRIMARY KEY, password varchar(255) ); CREATE TABLE admin_upload ( semester_number int, roll_number varchar(11), file_path varchar(2000), PRIMARY KEY (semester_number, roll_number) ); CREATE TABLE student_sign_up ( email varchar(255), roll_number varchar(11), PRIMARY KEY (email, roll_number) ); CREATE TABLE student_view_result ( semester_number int, roll_number varchar(11), file_path varchar(2000), PRIMARY KEY (semester_number, roll_number) ); CREATE TABLE verifier_verify_result ( semester_number int, roll_number varchar(11), file_path varchar(2000), PRIMARY KEY (semester_number, roll_number) );
-
Navigate to
demo/Backend
in your cloned folder then in there create an.env
fileemail="sender's_email" password="sender's_password" database_url="your_elephant_sql_URL"
You may run into this error when sending emails via nodemailer
-
After creating the
.env
file with all configuration, now open the terminal and in that navigate todemo/Backend
cd "path/demo/Backend"
-
After navigating to
demo/Backend
on terminal, now runnpm install
to install all dependencies and then run
npm start
to start the server and then on your browser open
localhost:3000/
- Implement the Authentication and Authorization
- Use the Concept of Asymetric Key to view and verify the result
- 2 Factor Authentication for Students
- Prevent SQL Injection as no Authentication and Authorization is implemented yet
- Ansh Singh 2020IMT-013
- Devanshu Patidar 2020IMT-026
- Prakhar Kumar Sinha 2020IMT-070