Games (Casino)
O template inclui um lobby de cassino completo com categorias, providers, busca, detalhe de jogo e cache server-side.
Customizacao da home
Edite app/config/home-rows.legacy.ts para personalizar a ordem e conteudo das secoes da home:
export const homeRowsConfig = [
{ type: "banners" },
{ type: "search" },
{ type: "menu" },
{ type: "category", slug: "popular" },
{ type: "gamification-widget" },
{ type: "category", slug: "slots" },
{ type: "providers" },
// adicione, remova ou reordene
];
Tipos disponiveis: banners, search, menu, category, gamification-widget, providers, winners.
Rotas
| Rota | Descricao |
|---|---|
/games | Lobby (home page do cassino) |
/games/:provider/:game | Pagina de detalhe do jogo |
/games/category/:slug | Jogos por categoria |
/games/providers | Grid de providers |
/games/providers/:slug | Jogos de um provider |
Cache
Dados de jogos sao cacheados no servidor com TTL de 5 minutos e stale-while-revalidate. Isso significa:
- Primeira visita: dados buscados da API e cacheados
- Visitas seguintes (< 5min): dados servidos do cache instantaneamente
- Visitas apos 5min: dados stale servidos imediatamente + revalidacao em background
Purge manual
Para forcar atualizacao do catalogo apos mudancas no backend:
POST /api/cache/games/purge
SEO
Paginas de detalhe de jogos incluem meta tags OG/Twitter automaticamente:
- Titulo, descricao e imagem do jogo
- Schema markup para jogos
- URLs canonicas
Busca
A busca de jogos e feita in-memory sobre o cache completo do catalogo — sem latencia de rede. Suporta busca por nome do jogo e provider.
Estatisticas
A pagina de detalhe mostra estatisticas do jogo por periodo (5min, 1h, 24h, 7d, 15d, 30d):
- Numero de apostas
- Numero de ganhos
- Jogadores ativos
- RTP (Return to Player)
Votos
Usuarios autenticados podem dar like/dislike em jogos. A contagem e exibida na pagina de detalhe.