Skip to content

ECEHive/hums

HUMS

Hive User Management System

User management system for The Hive Makerspace at Georgia Tech.

GitHub Repo stars GitHub License GitHub top language

Structure

This project has a monorepo structure. The apps/ directory contains applications (e.g. client, server) while the packages/ directory contains shared libraries and tools (e.g. prisma, trpc)

Prerequisites

  • Bun (JS/TS runtime and package manager)
  • Docker (optional, useful for devcontainers)

Check your version:

bun -v

Setup

  1. Clone the repository:

    git clone https://github.com/ECEHive/hums.git
    cd hums
  2. If you are able to use development containers, setup and enter the development container as is appropriate for your IDE. If you are unable to use development containers, you will need to manually setup a Postgres instance.

  3. Install dependencies for the whole workspace:

    bun install
  4. Generate database and apply migrations:

    cd packages/prisma
    bun generate && bun migrate
  5. Create environment files for each app that needs them (examples are provided):

    cp apps/client/.env.sample apps/client/.env
    cp apps/kiosk/.env.sample apps/kiosk/.env
    cp apps/server/.env.sample apps/server/.env
    # then edit the .env files to suit your local environment

Refer to each app's README for required variables.

Development

To start server, client, and kiosk with hot-reload, run the following in the workspace root,

bun dev

Alternatively, run the above in a specific directory within apps/ to individually start the server, client, or kiosk.

You can then access the client at https://localhost:44831/.

The kiosk is accessible at https://localhost:44832/ and the server is accessible at http://localhost:44830/.

Notes:

  • You may get an HTTPS warning in the browser when using the local dev servers. You can accept/bypass the warning to continue.

License

See LICENSE for license details.

Contributing

We welcome contributions! Please see CONTRIBUTING.md for guidelines on contributing (branching, commits, pull requests, and reviews). Also read and follow our CODE_OF_CONDUCT.md to help keep the community respectful and collaborative.

Alt

Packages

 
 
 

Contributors 7

Languages