project-overview
Project goals, roles, architecture guidelines, and privacy for DojoSphere
Install / Use
npx skills add AK2083/DojoSphereInstalls into whichever agent you are using.
.clinerules
Cline rules
Quality Score
Category
Development & EngineeringSupported Platforms
Tags
Skill content
View source on GitHubdescription: Project goals, roles, architecture guidelines, and privacy for DojoSphere alwaysApply: true
DojoSphere — Project Overview
Open-source Electron application for organizing small judo tournaments in clubs and local competition settings. Target audience: volunteer organizers without commercial tournament software.
Vision and user roles
| Role | Device | Responsibility | | ----------------------- | ------------------------- | ----------------------------------------------------------------------------------- | | Tournament director | Host computer (Electron) | Starts the app, registers competitors and mat count, manages the tournament | | Scorekeeper | Separate computer/browser | Connects via URL to the host; access only after approval | | Audience | Browser on intranet | Views overview via URL or QR code — without approval by the tournament director |
Planned flow (prospective)
- Tournament director starts the Electron application on the host computer.
- Competitors and mat count are recorded locally.
- Scorekeepers open a URL on the intranet and send a request to the host.
- Tournament director approves the request and assigns a mat.
- The audience opens the overview via URL/QR code on the intranet — read-only, no approval.
When building new features, consider these roles and the approval flow: scorekeeper = protected access, audience = public overview on the LAN.
Technical guidelines
- Frontend: Vue 3 (open source, suitable for club projects), Vuetify, Vue Router, vue-i18n
- Desktop: Electron — primary application for the tournament director
- Local-first data: SQLite in the Electron main process; renderer accesses only via IPC/preload
- Cloud optional: Supabase for authentication and cloud storage/sync — configuration and sync in Settings
- Monitoring: Local error log (
app.log) + SQLite audit; optional cloud diagnostic toggle (no upload yet)
Data storage and sync
- Primary: local SQLite database on the host (
<userData>/database.db) - Error log (local):
<userData>/logs/app.log - Optional: cloud sync via Supabase after sign-in — manual/automatic control in Settings
- Offline/local-first behavior takes precedence: the app must work without cloud
- Sync logic and conflict handling belong in Settings or dedicated feature slices — not scattered in UI components
Security and GDPR
Tournament competitors are natural persons — protect personal data:
- No sensitive data in plaintext when storing or transmitting (hashed passwords, secure tokens, no PII in logs/monitoring)
- Minimal data collection: only what is needed for tournament operations
- Cloud sync only with authentication; secure access rights server-side (RLS with Supabase)
- Intranet access (scorekeepers/audience) on the LAN — still avoid unnecessary exposure of personal data in URLs or client storage
- For new fields/endpoints, check: storage location (local vs. cloud), consent, deletability, encryption where appropriate
Scope notes for implementation
- Small tournaments: simple operation for volunteers matters more than enterprise features
- Tournament director workflow (Electron) and browser clients (scorekeepers/audience) are separate access paths — shared domain logic, different UI/permissions
- i18n for all UI text; no hardcoded strings
- Open Source (MIT): consider club compatibility for code and dependencies
Related Skills
claude-howto
41.4kA visual, example-driven guide to Claude Code — from basic concepts to advanced agents, with copy-paste templates that bring immediate value.
ai-job-search
40.9kThe job search that runs on your machine. AI job application framework built on Claude Code: evaluate postings, tailor CVs, write cover letters, prep interviews. Fork it and own it.
guizang-ppt-skill
25.7kAI-agent Skill for generating polished HTML slide decks: editorial magazine and Swiss layouts, image prompts, social covers, and a WebGL/low-power presentation runtime.
reactive-resume
42.2kA one-of-a-kind resume builder that keeps your privacy in mind. Completely secure, customizable, portable, open-source and free forever. Try it out today!
Security Score
Audited on Invalid Date
