Mulai cepat
- Di komputer server, buka terminal pada folder
backend, pasang dependensi denganpip install -r requirements.txt, lalu jalankanpython app.py. - Buka
http://alamat-server:8000dari perangkat admin, wasit, juri, dan layar publik yang berada pada Wi-Fi/LAN yang sama. - Masuk sebagai admin, buat kejuaraan, data laga/tim/pesilat, jadwal, dan akun petugas.
- Pada Laga & Bracket → Jadwal Pertandingan, tekan Atur dan tugaskan tepat tiga juri sebelum nilai teknik dapat disahkan.
- Buka Papan Skor pada layar publik, Panel Juri pada perangkat juri, dan Panel Wasit pada perangkat pengendali pertandingan.
Akun awal/demo tersedia pada halaman masuk. Ganti kata sandi akun dan nilai SILAT_SECRET sebelum sistem dipakai di lingkungan operasional.
Peran pengguna
| Peran | Halaman | Tanggung jawab |
|---|---|---|
| Publik | Papan Skor | Melihat waktu, babak, skor, hukuman, dan hasil tanpa login. |
| Admin | Dashboard | Mengelola kejuaraan, laga, bracket, jadwal, pesilat, pertandingan, dan akun pengguna. |
| Juri | Panel Juri | Mengirim vote nilai teknik untuk sudut Biru atau Merah. Juri tidak menetapkan hukuman. |
| Wasit | Panel Wasit | Mengendalikan timer/babak, memasukkan hukuman resmi, diskualifikasi, dan menyelesaikan partai. |
| Operator | Panel operasional | Membantu pengoperasian pertandingan dan melakukan koreksi tercatat sesuai kewenangan. |
| Ketua Pertandingan | Panel operasional | Pembinaan, koreksi, keputusan tertentu, serta tahapan akhir tie-break sesuai kewenangan. |
Semua menu admin
Ringkasan
Menampilkan jumlah tim dan partai, pertandingan yang sedang berlangsung, hasil selesai, skor partai aktif, dan aktivitas terbaru.
Kejuaraan
Buat atau ubah nama, tanggal, lokasi, kategori, jumlah gelanggang, profil aturan scoring 2025/2026, dan status kejuaraan. Pilih kejuaraan aktif dari bagian atas dashboard sebelum mengelola data turunannya. Perubahan profil memperbarui partai yang masih pending; partai berjalan dan selesai mempertahankan snapshot aturan lamanya.
Laga & Bracket
Buat laga per kelas, tambah tim dan anggota, atur jumlah pertandingan per hari serta tanggal mulai, lalu gunakan Generate Semua Braket. Periksa draft sebelum menekan Simpan Permanen; tindakan ini membuat pertandingan dan jadwal.
Pengguna
Tambah akun dan pilih peran admin, juri, wasit, operator, atau ketua pertandingan. Akun sendiri dan admin terakhir dilindungi dari penghapusan.
Rekapitulasi Hasil
Menampilkan partai selesai, pemenang, skor akhir, klasemen kontingen, dan menyediakan ekspor CSV/cetak.
Papan Skor
Membuka tampilan publik. Gunakan tombol layar penuh atau tombol F pada komputer display.
Menjalankan satu partai
- Persiapan: pilih partai yang sama pada semua perangkat; cocokkan nomor partai, gelanggang, pesilat Biru/Merah, babak, dan tiga juri yang bertugas.
- Mulai: wasit menekan Mulai. Nilai teknik hanya diterima ketika timer berjalan.
- Penilaian: setiap juri menekan jenis teknik dan sudut yang benar. Skor masuk bila sedikitnya dua dari tiga juri memberi vote yang sama dalam jendela satu detik.
- Hukuman: wasit/ketua pertandingan memasukkan Binaan, Teguran, atau Peringatan berdasarkan keputusan resmi—bukan vote juri.
- Antarbabak: hentikan timer, verifikasi skor, lalu tekan lanjut babak. Binaan dan Teguran kembali nol tiap babak; Peringatan tetap terakumulasi.
- Koreksi: gunakan koreksi/undo hanya untuk kesalahan input. Sistem menyimpan catatan perubahan; jangan mengubah database secara langsung.
- Akhir: tekan Selesaikan Partai. Jika seri, sistem menjalankan urutan tie-break; babak tambahan hanya digunakan bila kriteria sebelumnya tetap seri.
Rincian nilai, hukuman, WMP, dan tie-break tersedia pada halaman Aturan Pertandingan.
Hasil dan ekspor
- Buka Rekapitulasi Hasil setelah partai dikunci.
- Periksa nama, kontingen, skor, metode kemenangan, dan ringkasan klasemen.
- Gunakan ekspor CSV untuk pengolahan data atau Cetak untuk membuat arsip/PDF.
- Jika ada sengketa, pertahankan log aktivitas dan riwayat skor sebagai bahan pemeriksaan. Jangan reset data.
Checklist operasional LAN
- Gunakan router lokal khusus; seluruh perangkat harus membuka alamat server yang sama.
- Sinkronkan jam server dan klien, uji koneksi, login, timer, serta vote tiga juri sebelum acara.
- Pasang catu daya cadangan untuk server, router, dan layar utama.
- Cadangkan berkas
backend/silat.dbketika aplikasi dihentikan atau melalui prosedur backup SQLite yang benar. - Set
SILAT_ALLOW_RESET=0atau jangan definisikan variabel tersebut pada produksi. - Jangan membagikan akun antarpetugas. Data identitas peserta hanya diberikan kepada pihak yang berkepentingan.
Pemecahan masalah
Skor tidak bertambah
Pastikan timer berjalan, pertandingan belum terkunci, juri sudah ditugaskan, dan sedikitnya dua juri menekan teknik/sudut yang sama dalam satu detik.
Perangkat tidak sinkron
Pastikan semua perangkat memakai URL server yang sama, bukan membuka file HTML atau alamat localhost milik perangkat masing-masing. Muat ulang halaman setelah koneksi pulih.
Tombol ditolak atau sesi habis
Masuk kembali dan periksa peran akun. Sesi server berlaku delapan jam; tindakan di luar kewenangan menghasilkan penolakan.
Reset demo gagal
Pada mode server, reset hanya tersedia untuk admin ketika server dijalankan dengan SILAT_ALLOW_RESET=1. Pembatasan ini disengaja untuk melindungi data pertandingan.