Skip to content

vadchil/nextdraft

Repository files navigation

Tournament Bracket (Static Next.js)

Aplikasi bracket tournament single-elimination berbasis Next.js (App Router), semua data disimpan lokal per device.

Brand: nextdraft

Fitur Utama

  • Generate bracket otomatis dari daftar tim (dengan dukungan bye).
  • Input skor per match, pemenang maju otomatis ke ronde berikutnya.
  • Persist state lokal menggunakan zustand + localStorage.
  • Export/Import state JSON.
  • Share state via URL terkompresi (?s=...).
  • Reset tournament lokal.

Menjalankan Project

  1. Install dependencies:
npm install
  1. Buat file env lokal dari template:
cp .env.example .env.local
  1. Jalankan development server:
npm run dev

Open http://localhost:3000.

Scripts

npm run dev
npm run lint
npm test
npm run build

Build Static

npm run build

Build saat ini menghasilkan route static (/).

Struktur Inti

  • app/page.tsx: UI create tournament + bracket board.
  • store/tournamentStore.ts: state management + persistence.
  • lib/bracket.ts: algoritma generate/update/propagate bracket.
  • lib/share.ts: encode/decode state untuk URL.

Catatan

  • Penyimpanan lokal berarti data tidak sync antar device.
  • Untuk share antar device/user, gunakan fitur Share URL atau Export/Import JSON.

GitHub Ready

  • CI GitHub Actions tersedia di .github/workflows/ci.yml (lint, test, build).
  • Issue template tersedia di .github/ISSUE_TEMPLATE/.
  • PR template tersedia di .github/pull_request_template.md.
  • Template environment tersedia di .env.example.

Kontribusi

  1. Fork repository
  2. Buat branch fitur/perbaikan
  3. Pastikan npm run lint, npm test, dan npm run build lolos
  4. Buat Pull Request

About

Tournament auto bracket generator, build with nextjs and tailwindcss.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages