BitHunt is a SvelteKit and PostgreSQL based web app that allows Societies to create treasure hunts for their members to complete. Each treasure hunt consists of multiple stages, each stage has a puzzle that the players must solve to get the clue to the next stage. Stages are found by scanning QR Codes, which are generated for each stage.
It was originally developed for CS++'s Freshers Treasure Hunt 2023.
- Players can register and log in to the game.
- Leaderboard
- Modular Stages
- Modular Puzzles
- Full Admin Suite
- QR Code Generation
- Overall Game Stats
- Node.js
- NPM
- PostgreSQL
- Create a new PostgreSQL database.
CREATE DATABASE [name];
- Clone the repository.
git clone https://github.com/cs-soc-tudublin/BitHunt.git
- Install the dependencies.
npm install
- Create a
.env
file in the root directory of the project and add the following environment variables.
DATABASE_URL=postgres://[username]:[password]@[database URL]:[port]/[name]
ADMIN_PASSWORD=[password]
- Start the server.
npm run dev
-
Navigate to '[URL]:5173/admin' and log in with the password you set in the
.env
file. -
Click 'Initialise Database'.
-
You're done! You can now create your own treasure hunt.
The documentation for BitHunt can be found in the docs directory.