Skip to content

minaboktor2628/student-solver-tool

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Student Solver Tool

This is a tool to validate, solve, and manage TA and PLA assignment at Worcester Polytechnic Institute.

Note

This is a T3 Stack project bootstrapped with create-t3-app.

Prerequisites

POSIX System

You will need a POSIX style operating system to run this repo. Mac and Linux users are OK, but Windows users should use WSL.

Node Versioning

This project uses nvm to manage Node versions. There is a file named ./nvmrc that contains the correct node version that nvm will install. To install nvm, use one of the following commands or read their docs here:

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash

Then install & use the correct version of Node:

nvm install   # installs Node version specified in .nvmrc
nvm use       # switches to the node version

Package Manager

This project uses pnpm as the package manager. To install pnpm, run theses commands or visit their docs here:

corepack enable
corepack prepare [email protected] --activate

Verify

node -v   # should be >=22
pnpm -v   # should be >=10.15.0

Getting Started

You will need the proper database and environment variables set up to run the app. For local development, you must set up a local Postgres instance. There is a provided start-database.sh script that you can run. The script also contains extra instructions at the top of the file.

The app will NOT run without properly set environment variables. Copy the example file (.env.example) into a .env file:

cp .env.example .env

The file will tell you what environment variables you need. When adding additional environment variables, the schema in src/env.js should be updated accordingly.

Warning

Never commit environment variables! Treat them like you would any other password.

If you would like to skip environment variable checking when running the app/command, you will need to set the SKIP_ENV_VALIDATION to true. This can be useful for CI/CD or when building w/ Docker.

Example:

SKIP_ENV_VALIDATION=true pnpm run dev

Run The Development Server

pnpm i
SKIP_ENV_VALIDATION=true pnpm run dev

Please read the package.json file to see what kinds of scrips you can run. Running pnpm run in the terminal will also give you the available commands.

CI/CD & Git Hooks

This project uses Husky for managing git hooks. This allows us to run formatters and linter fixes before pushes. All the Github actions are under ./github/workflows. They can type check, lint check, formatter check, and make sure that the project will build.

Library Documentation

Deploying

This project uses Docker. Here is the t3 guide.

There are more docs here

About

A tool to assign TA's/PLA's to courses at WPI based on their preference and abilities.

Topics

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors 4

  •  
  •  
  •  
  •