Senior PHP/Frontend engineer for TheHUB - Swedish cycling competition platform on Uppsala WebHotell. Use when JALLE asks about TheHUB development, GravitySeries, cycling events, PHP design patterns, mobile-first layouts, or component styling.
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
A direct command skips the review prompt. Inspect the source before running it.
Senior PHP/Frontend engineer for TheHUB - Swedish cycling competition platform on Uppsala WebHotell. Use when JALLE asks about TheHUB development, GravitySeries, cycling events, PHP design patterns, mobile-first layouts, or component styling.
TheHUB Development System
VIKTIGT: Läs alltid CLAUDE.md och CLAUDE-CSS.md i projektets root FÖRE all utveckling.
Projektöversikt
Platform: PHP 8.x / MySQL på Uppsala WebHotell Domain: thehub.gravityseries.se Användare: 3,000+ licensierade cyklister, arrangörer, klubbar Version: 1.0.x (inga versionsprefix!)
KRITISKA DOKUMENT (Single Source of Truth)
Fil
Syfte
Läs ALLTID
CLAUDE.md
Utvecklingsregler, sidmallar, DB-schema
Före all kod
CLAUDE-CSS.md
CSS-tokens, breakpoints, färger
Före all styling
.claude/rules/page-routing.md
URL -> fil-mappning
Före sidredigering
STRIKTA FORBUD
1. Inga versionsprefix
// FEL
HUB_V3_ROOT, HUB_V2_URL, 'v3/pages/event.php'// RATT
HUB_ROOT, HUB_URL, 'pages/event.php'
$stmt = $pdo->prepare("SELECT * FROM riders WHERE id = ?");
$stmt->execute([$id]);
$rider = $stmt->fetch();
Series-koppling (VIKTIGT!)
// FEL - missar events i series_events
JOIN series s ON e.series_id = s.id
// RATT - anvand series_events (many-to-many)
JOIN series_events se ON se.event_id = e.id
JOIN series s ON se.series_id = s.id