Skip to content

fa993/coding-plat

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

coding platform

The backend for a coding platform designed for the cometlabs task according to their specifications along with a minimalistic UI for demonstration
Explore the docs »

View Demo · Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Demo
  3. Getting Started
  4. Roadmap
  5. Contact
  6. Acknowledgments

About The Project

This project contains the backend for the coding platform. Most of that code is located in the index.js files and the subsequent routes folder.

A frontend for this has also been built as part of the task which serves to demonstrate the functionality of the API.

Postman docs: https://documenter.getpostman.com/view/19472614/2s946e9tCW

Deployed URL: https://coding-plat.onrender.com

Both the frontend and backend are at the same url

(back to top)

Built With

  • Express

(back to top)

Demo

There are 2 demonstrations account already in the db:

Admin:
email: [email protected]
password: asd

Participant:
email: [email protected]
password: asd

Although participant accounts with real emails will have to be used to test the email feature

A Demonstration video showing a participant submitting a code challenge

demo

A Demonstration video showing an admin creating a code challenge and subsequently deleting it

demo

For more examples, please refer to the Documentation

(back to top)

Getting Started

To get a local copy up and running follow these simple example steps.

Prerequisites

  • npm

Installation

  1. Clone the repo
    git clone https://github.com/fa993/coding-plat
  2. Install NPM packages
    npm install
  3. Copy over your copy of .env files with the required credentials in the root directory

(back to top)

Running Locally

  1. use the npm startup script

    npm start

    (back to top)

Roadmap

  • API for users to signup and login
  • Role based acccess control for middleware
  • Questions stored in db and synchronised with sphere-engine
  • Admin API: CRUD functions for question
  • Admin API: CRUD function for testcases
  • Participant API: Ability to select questions and submit problems for those questions.
  • Paginated the lists for viewing testcases and questions
  • Viewing questions available to both roles
  • Mail the participants their own submissions
  • Frontend to demo the core features
  • JWT whitelist for more secure token management

See the open issues for a full list of proposed features (and known issues).

(back to top)

Contact

Ameya Kore - [email protected]

Project Link: https://github.com/fa993/coding-plat

(back to top)

Acknowledgments

(back to top)

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published