Installation
WIP. Writing and testing installation instructions is an absolute nightmare.
Our project is developed on UNIX-based operating systems.
Please complete instructions in the 'Windows' tab before proceeding if you're a Windows user.
MacOS is a UNIX-based operating system, so you can skip ahead.
Install Nix
# Answer 'y' for all questions
sh <(curl -L https://nixos.org/nix/install) --daemon --yes
exit
logout
[process exited with code 127 (0x0000007f)]
You can now close this terminal with Ctrl+D, or press Enter to restart.
Hit Enter, and re-open the terminal.
Configure GitHub CLI
Create a GitHub account if you don't already have one.
# Login with your GitHub account.
nix-env -iA nixpkgs.gh; gh auth login -p=https -w
Provide the following answers if prompted.
? Authenticate Git with your GitHub credentials? [Use arrows] to move, type to filter]
> Yes
# Your one-time code will be different.
! First copy your one-time code: 95i2-DAE6
Press Enter to open github.com in your browser...
Navigate to the github link shown if you see this and paste in the code as usual.
Return to the terminal when you see the Congratulations, you're all set!
screen.
You should see the following:
✔ Authentication complete.
- gh config set -h github.com git_protocol https
✔ Configured git protocol
✔ Logged in as yourgithubusername
Fork and Clone Repository.
Open VSCode (Or your preferred editor):
# Allow all hosts and trust the authors when you see a popup
# And install all recommended extensions
code .
From the VSCode integrated terminal, navigate to directory and install dependencies.
gh repo fork cuhacking/2025 --clone # Fork and clone repo
cd 2025; # Navigate into directory
nix-shell; # Enter Nix Shell
pnpm i; # Install packages
pnpm exec playwright install --with-deps # Install Playwright Browsers for E2E Testing
You'll see the url(s) in your terminal for the project(s) you're running, simply paste those in to your browser address bar.
For example you may see:
╰─ pnpm nx dev docs --verbose ─╯
> nx run docs:dev
> next dev
[MDX] initialized map file
▲ Next.js 15.0.3
- Local: http://localhost:3000
- Experiments (use with caution):
· turbo
✓ Starting...
automatically enabled Fast Refresh for 1 custom loader
✓ Ready in 1790ms
URLs may change as the project matures.
If multiple apps are running or another server using that network port, your URLs may be different from someone else's and that's okay.
Always look at your terminal for the correct URL.
What's next?
Explore the Tech Stack to learn what powers our meta-framework.
Get Involved
Looking to contribute? If you've already read the Overview then head on over to the Contribution Guidelines.
Connect With Us
Connect on our channels and with the cuHacking team to ask questions, get help and keep up to date with the latest events.
- ⭐ Star us on GitHub to show your support.
- Join our Discord Community.
- Follow us on Social Media.