CSpace

This is the repository for the CSpace system in the Department of Computer Science and Information Engineering, National Taiwan University.

Frontend Development Get Started

Use Node.js v25.4.0.

After cloning the repository, run the following commands to setup the development environment:

cd cspace/cspace-frontend
npm install

Run npm run dev to start vite dev server.

Before you commit, run npm run lint and npm run format to make sure your code satifies coding style and convention.

Backend Development Get Started

To start the development server:

  1. cd into cspace-backend

  2. create a file .env

DB_USER=[enter username]
DB_PASSWORD=[enter password]
DJANGO_SECRET_KEY=[enter anything e.g. your-secret-key]
  1. Then execute:

docker compose -f docker-compose.yml -f docker-compose.dev.yml build --no-cache
docker compose -f docker-compose.yml -f docker-compose.dev.yml up

To stop: cd into cspace-backend

docker compose -f docker-compose.yml -f docker-compose.dev.yml down

Branch Naming Rule

<scope>/<type>/<short-description>

Example:

  • backend/feature/user-auth

  • backend/fix/allocation

  • infra/chore/docker-build-optimize

scope (where it happens)

  • backend

  • frontend

  • fullstack (if both)

  • infra / devops (if needed later)

type (what you’re doing)

  • feature – new functionality

  • fix – bug fixes

  • chore – maintenance (deps, config)

  • refactor – code changes without behavior change

  • docs – documentation

  • test – tests

short-description

  • lowercase

  • hyphen-separated

  • concise but meaningful

After work is done on the branch, either:

  • Create PR, squash merge the task branch into main once approved, and then delete the task branch.

  • Create PR, merge normally once approved, and then delete the task branch.