A modern Progressive Web App (PWA) built with SvelteKit for managing tournaments, teams, matches, and user authentication. It leverages modern technologies like SvelteKit, Drizzle ORM, Postgres, TailwindCSS, and authentication services for a robust, scalable, and secure experience. Visit the app
⚡ This application was originally created for Lycus Inc. to streamline and digitize their tournament management process. Designed with scalability in mind, it can be adapted for schools, sports clubs, and corporate events, offering organizers a seamless way to register teams, manage matches, and showcase live standings. Its intuitive interface ensures both administrators and participants have an engaging, user-friendly experience.
git clone https://github.com/yourusername/scoreboard-management-system.git
cd scoreboard-management-system
yarn install
# or
npm install
.env
file:DATABASE_URL
(Postgres connection string)AUTH_SECRET
(authentication secret)GOOGLE_CLIENT_ID
and GOOGLE_CLIENT_SECRET
(for Google OAuth)Run migrations:
yarn db:migrate
# or
npm run db:migrate
Start the development server:
yarn dev
# or
npm run dev
Build for production:
yarn build
# or
npm run build
Preview production build:
yarn preview
# or
npm run preview
dev
: Start development serverbuild
: Build for productionpreview
: Preview production builddb:migrate
: Run database migrationsdb:push
: Push schema changesdb:generate
: Generate migration filesdb:studio
: Open Drizzle Studiolint
: Run Prettier and ESLintformat
: Format codebaseUses secure authentication with OAuth. Supports Google authentication. Role-based access is enforced in API routes and UI components.
/api/standings/[id]
: Get tournament standings by ID/api/matches
, /api/teams
, /api/tournaments
: Protected committee/admin routes/api/users
: Protected admin routeThis application is built as a Progressive Web App, which means:
DATABASE_URL
: NeonDB Postgres connection stringBETTER_AUTH_SECRET
: Auth secretConfigured for Vercel deployment via @sveltejs/adapter-vercel
. See svelte.config.js
for adapter settings.
Default password is: password1234
There are many regular users. You can see there emails from the admin panel.
Copyright (c) 2025 ehtishamalik
This project is proprietary and confidential. Unauthorized copying, distribution, or use is strictly prohibited.