Skip to content

gnull/submission

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Installing

This web app is packaged as a Nixos system config. To install it and enable the systemd service, import this flake as submission and then add the following to your config.

modules = [
  submission.nixosModules.default
  {
    services.submission-web = {
      enable = true;
      host = "0.0.0.0";
      port = 8080;
      # Optionally, set the storage path:
      # dataDir = "/some/path";
    };
  }
];

Running

Run with Nix

This web service is packages with Nix flakes, and you can both build and run it with a single command. The following command just runs the service listening on port 8080, storing sqlite DB and files in the current directory.

nix run

You can pass it extra commandline options like so.

nix run .#default -- --host 0.0.0.0 --port 80

It also accepts --database and --uploads options to choose where to store data. See --help for more.

Manually

Install dependencies:

# Get the required packages
nix-shell -p rustup -p nodejs_24
rustup toolchain install nightly
rustup default nightly

Build frontend:

# Run Vue.js frontend
cd frontend
npm install
npm run build

Build and run backend:

# Run Rust backend
cd backend
cargo run -- --static-dir ../frontend/static --host 0.0.0.0 --port 0000

About

Web app for submitting and grading homeworks

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •