Skip to content

Viriya6/JustCode

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

github-removebg-preview
MUCH MUCH MUCH SIMPLER JUDGE

❓ What Is JustCode?

JustCode is a simple online judge for people who wants to host private coding contests or teach students competitive programming to sharpen their problem-solving skills.

JustCode is inspired by Codeforces and TLX Online Judge to simplify how to deliver competitive programming.

Quick Start ❗

If you using Windows make a new 'start.bat' file:

@echo off
SET VENV_DIR=venv

echo [1/3] Inspecting Virtual Environment...
IF NOT EXISTS %VENV_DIR% (
    echo Creating new Virtual Environment...
    python -m venv %VENV_DIR%
) ELSE (
    echo Virtual Environment already exist.
)

echo [2/3] Activating Venv and Install/Update Library...
call %VENV_DIR%\Scripts\activate
pip install -r requirements.txt

echo [3/3] Running Flask...
echo Application running at http://127.0.0.1:5000
python app.py

pause

But if you using linux add 'start.sh' file:

#!/bin/bash
VENV_DIR="venv"

echo "[1/3] Inspecting Virtual Environment..."
if [ ! -d "$VENV_DIR" ]; then
    echo "Creating new Virtual Environment..."
    python -m venv $VENV_DIR
else
    echo "Virtual Environment already exist."
fi

echo "[2/3] Activating Venv and Install/Update Library..."
if [ -f "$VENV_DIR/Scripts/activate" ]; then
    source $VENV_DIR/Scripts/activate
else
    source $VENV_DIR/bin/activate
fi

pip install -r requirements.txt

echo "[3/3] Running Flask..."
echo "Application running at http://127.0.0.1:5000"
python app.py

echo "Press enter to close..."
read

OR if you dont wanna do that just type

pip install -r requirements.txt

Requirements 🔧

Require Modules:

Flask
Flask-SQLAlchemy
python-dotenv
Werkzeug

How To 📜

  • Login

Login using admin account (username:admin, password:admin123)

  • Add User

Adding user using admin acocunt.

  • Create A Problem

To create a problem you need to make a folder inside ./problems folder

problems/
└── problem1
    └── info.json
    └── testcases/
        └── sample1.in
        └── sample1.out