How githinji96/neon_noir_casino works
Neon Noir Casino is a browser casino with public discovery, authenticated slot play, progressive jackpots, live-table games, and role-gated administration. Players enter through the lobby, authenticate when needed, and play slots or live tables; game state and jackpot logic resolve play, while Supabase supports identity and persistence. Admins use a separate guarded portal for operational and analytics tasks. The README and route excerpt establish the main product areas; several storage and payment integrations are identified by documentation and filenames, but their runtime wiring was not sampled.
Main entry points: App.tsx Route shell · gameStore.ts Game state · authStore.ts Auth state · supabase.ts Supabase client
Components 23
App and access
- Route shell
src/App.tsx - Auth pages
src/pages/auth - Auth state
src/store/authStore.ts
Casino experience
- Casino lobby
src/pages/CasinoLobby.tsx - Slot game
src/pages/SlotMachine.tsx - Live tables
src/pages/LiveTablesPage.tsx - Live table room
src/pages/LiveTableRoom.tsx - Jackpot experience
src/pages/JackpotsPage.tsx - VIP experience
src/pages/VIPPage.tsx
Gameplay engines
- Game state
src/store/gameStore.ts - Slot resolution
src/logic - Slot RTP control
src/logic/rtpController.ts - Jackpot engine
src/logic/jackpot/jackpotEngine.ts - Table outcomes
src/logic/outcomeEngine/outcomeEngine.ts
State and services
- Jackpot state
src/store/jackpotStore.ts - Supabase client
src/lib/supabase.ts - M-Pesa functions
supabase/functions/mpesa-stk/index.ts
Administration
- Admin access guard
src/components/admin/AdminAuthGuard.tsx - Admin portal
src/pages/admin - Admin state
src/store/adminStore.ts
Other components
- Player
- Administrator
- Supabase
Connections 23
- Player → Route shell: opens
- Administrator → Route shell: opens
- Route shell → Casino lobby: routes to
- Route shell → Auth pages: routes to
- Route shell → Slot game: protects route
- Route shell → Live tables: routes to
- Route shell → Live table room: routes to
- Route shell → Jackpot experience: routes to
- Route shell → VIP experience: routes to
- Route shell → Admin access guard: guards routes
- Admin access guard → Admin portal: authorizes
- Route shell → Auth state: initializes
- Auth pages → Auth state: uses auth
- Auth state → Supabase client: uses client
- Supabase client → Supabase: connects
- Slot game → Game state: uses state
- Game state → Slot resolution: resolves spins
- Game state → Slot RTP control: records spins
- Game state → Jackpot engine: processes spins
- Jackpot experience → Jackpot state: uses state
- Live table room → Table outcomes: resolves rounds
- Admin portal → Admin state: uses state
- Admin state → Supabase client: uses client