AssignExpert is a web based platform for educational institutions to host and evaluate programming assignments.
- Execute code
- Let a faculty create a class
- Let a student join a class
- Let a faculty create assignments with testcases
- Let a student view assignment, submit code
- Let a student see all personal submissions
- Let a faculty see all submissions
...and many more!
To sandbox user-submitted code, we use Docker. To set it up, steps are mentioned below in this document.
API documentation can be found here.
- Install Node (>=v16.0).
- Install Redis.
- Install PostgreSQL and a create a database with the name
assignexpert
. - Install Docker.
- Run:
bash scripts/docker-build.sh
(this setup is data-intensive as it will download a lot of images from the internet). - Prepare your
.env
file using the .env.example file. - Do,
npm install
to install node level dependencies. - Start your PostgreSQL server.
- Start your Redis server.
- Run:
psql -d assignexpert < src/scripts/schema.sql
. - Do,
npm run dev
to start the server.
Please read the organization standard.
Coming soon!