Skip to content

jrnxf/une.haus

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

236 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

une.haus

all things une

une.haus

about

une.haus is a platform for unicyclists to share tricks, compete in games, organize tournaments, and connect with each other.

core features

  • tricks โ€” browse a comprehensive trick encyclopedia with detail pages showing full trick info, videos, and prerequisites
  • games โ€” three collaborative games: rack it up (post creative sets weekly and reply to others), back it up (match the last trick then set a new one, building evolving chains), and stack it up (nail every trick in the stack then add your own to the end)
  • vault โ€” explore unicycle.tv videos with community metadata curation, rider attribution, and filtering by discipline
  • posts โ€” share stories in posts with tags (freestyle, street, trials, etc.), leave comments, and like content
  • tourneys โ€” create and manage bracket-style tournaments with live tournament features
  • social โ€” find riders around the world on the map, follow other players, and stay connected

tech stack

hosting

une.haus is self-hosted on a homelab server โ€” bun running natively under systemd, postgres on the same box, exposed via a cloudflare tunnel (no open ports). no platform-as-a-service, no managed database. the repo itself is deploy-agnostic; any host that can run bun + postgres works. see DEPLOY.md for the build/run contract.

getting started

bun install
cp .env.example .env
git config core.hooksPath .git-hooks
bun dev

git config core.hooksPath .git-hooks enables a post-checkout hook that symlinks the gitignored .env files into any new git worktree (see .git-hooks/post-checkout). worktrees don't inherit gitignored files, so without it integration tests and bun dev fail env validation inside a fresh worktree. it's a local git setting, so each clone runs it once.

scripts

command description
bun dev start dev server
bun run build build for production
bun start run production server
bun run lint lint
bun run format format with oxfmt
bun run check lint with auto-fix and format
bun run typecheck type check
bun preflight lint, format, typecheck, and test
bun run test:unit run unit tests
bun run test:integration run integration tests
bun run db:migrate push database migrations
bun run db:seed wipe, migrate, and seed database
bun run clean find and fix unused code with knip

contributing

  1. fork the repo
  2. create a branch (git checkout -b feature/my-feature)
  3. make your changes
  4. run checks before committing
bun run preflight
  1. commit and push
  2. open a pull request

license

mit

About

๐Ÿค˜๐Ÿผ all things une

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages