Hillfinder
Hillfinder는 자전거·스케이트·탐험가에게 부드럽고 경치 좋은 코스를 찾아 저장·공유하도록 돕는다
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
A comprehensive web application for managing darts tournaments with group stages, playoffs, live match tracking, and detailed statistics.
This application allows users to create and manage darts tournaments with the following features:
• Tournament creation and configuration
• Player registration
• Group stage management
• Playoff bracket generation
• Live match tracking
• Real-time statistics and standings
• Multi-language support (Slovak/English)
src/components/TournamentCreation.jsx
Purpose: Initial tournament setup and configurationREADME 전문 보기 ↗A comprehensive web application for managing darts tournaments with group stages, playoffs, live match tracking, and detailed statistics.
This application allows users to create and manage darts tournaments with the following features:
src/
├── components/ # React components
├── contexts/ # React context providers
├── services/ # API and database services
├── locales/ # Translation files
└── lib/ # Utility libraries
src/components/TournamentCreation.jsxPurpose: Initial tournament setup and configuration
Key Features:
src/components/TournamentRegistration.jsxPurpose: Player registration and tournament settings management
Key Features:
src/components/TournamentManagement.jsxPurpose: Main tournament management interface
Key Features:
src/components/MatchInterface.jsxPurpose: Live match gameplay interface
Key Features:
src/contexts/TournamentContext.jsxPurpose: Global tournament state management
Key Features:
Key Functions:
createTournament(): Create new tournamentselectTournament(): Select active tournamentgetTournament(): Load tournament from databasestartMatch(): Start a matchcompleteMatch(): Complete a match and update standingsstartPlayoffs(): Initialize playoff bracketupdateTournamentSettings(): Update tournament configurationupdateGroupStandings(): Recalculate group standingssrc/contexts/LiveMatchContext.jsxPurpose: Live match tracking across devices
Key Features:
src/contexts/AdminContext.jsxPurpose: Admin/Scorer authentication and permissions
Key Features:
src/contexts/LanguageContext.jsxPurpose: Multi-language support
Key Features:
src/services/tournamentService.jsPurpose: Tournament database operations
Key Features:
createTournament(): Create tournament with players, groups, matchesgetTournament(): Load single tournament with all dataupdateTournamentSettings(): Update tournament configurationdeleteTournament(): Delete tournamentcalculateGroupStandings(): Calculate standings with customizable criteriaupdateTournamentPlayoffs(): Save playoff bracket to databasestartTournament(): Generate groups and matchesaddPlayerToTournament(): Add player to tournamentsrc/services/matchService.js (within tournamentService.js)Purpose: Match database operations
Key Features:
startMatch(): Start a match (create or update)saveMatchResult(): Save match result and statisticsendLiveMatch(): Clear live match trackingsrc/lib/supabase.jsPurpose: Supabase client configuration
Key Features:
The schema, RLS policies and RPCs come only from supabase/migrations/, applied in order. supabase/tests/ holds SQL self-checks. Do not apply hand-written SQL to production outside a migration.
standingsCriteriaOrder arraylegsToWinByRound objectTournamentCreation.jsx → Configure basic settingsTournamentRegistration.jsx → Add players, finalize settingsTournamentManagement.jsx → Manage tournamentTournamentManagement.jsxMatchInterface.jsx → Play matchTournamentContext.jsxcalculateGroupStandings() in tournamentService.jstournament.group_settings.standingsCriteriaOrderLiveMatchContext.jsx tracks active matchesTournamentManagement.jsxConfigured in tournament settings, stored in group_settings.standingsCriteriaOrder:
matchesWon: Number of matches wonlegDifference: Difference between legs won and lostaverage: Cumulative match averageheadToHead: Head-to-head recordStored in playoff_settings.legsToWinByRound:
16: Round of 168: Quarter-finals4: Semi-finals2: FinalTranslation files in src/locales/:
en.json: English translationssk.json: Slovak translationsKeys organized by feature area (management, registration, common, etc.)