Documentação do Projeto: FURIA ChatBot

Descrição do Projeto

Um assistente conversacional completo para fãs da equipe FURIA de CS:GO, oferecendo informações sobre partidas, jogadores e estatísticas em tempo real.

Visão Geral

FURIA ChatBot é uma aplicação web com interface interativa desenvolvida com Next.js + TypeScript, voltada para a comunidade de fãs da equipe de CS:GO FURIA Esports.

Com comandos simples via chat, o bot fornece:

  • Partidas futuras e resultados
  • Próximos eventos
  • Lineup atualizada automaticamente
  • Estatísticas atuais nos mapas do jogo
  • Últimas notícias da equipe
  • Posição no ranking mundial (HLTV e Valve)
  • Sistema de scraping com atualização diária
  • Página de contato funcional com reCAPTCHA

Funcionalidades

  • Chatbot com interface responsiva e moderna
  • Comando /nextgame com scraping dos próximos jogos em tempo real
  • Comando /nextevents com scraping dos próximos torneios/campeonatos em tempo real
  • Comando /lastmatches mostra o resultado dos últimos jogos da FURIA
  • Comando /mappool mostra a porcentagem de vitórias atual da FURIA nos mapas do CS2
  • Comando /news mostra as últimas notícias do time da FURIA
  • Comando /ranking com extração de ranking HLTV/Valve em tempo real
  • Comando /lineup com coach + jogadores atuais
  • Comando /help com lista de recursos
  • Página de contato com validação reCAPTCHA
  • Atualização diária via node-cron (05h)
  • Sistema de scraping com Puppeteer + Stealth

Contribuindo

  • Faça um fork do repositório
  • Crie sua branch: git checkout -b minha-feature
  • Commit suas alterações: git commit -m 'feat: nova feature'
  • Push para sua branch: git push origin minha-feature
  • Abra um Pull Request

Como Funciona

O sistema se divide em três camadas principais:

  • Interface do Usuário (Next.js)
    • Páginas: chat, landing, contato
    • Componentes: Header, ChatInput, ChatMessages, etc.
  • Backend / Scraping / API
    • Endpoints para comandos (/api/nextgame, /api/lineup, etc.)
    • Puppeteer com Stealth Plugin faz scraping de dados reais
    • Banco gerenciado com Prisma ORM
    • Banco de Dados
    • Armazena histórico de scraping, lineup, próximos jogos, etc.

Teste Local

    Pré-requisitos

    Node.js 18+ 
    Sqlite
    npm

    ⚙️ Instalação

    # Clone o projeto
    git clone https://github.com/seu-usuario/furia-chatbot.git
    cd furia-chatbot
    # Instale as dependências
    npm install
    # Configure o ambiente
    cp .env.example .env
    # (Edite o .env com suas credenciais de banco, e-mail, chaves do reCAPTCHA, etc.)
    # Crie o banco e aplique as migrações
    npx prisma migrate dev --name init
    # Inicie o servidor local
    npm run dev
    # Acesse em:
    http://localhost:3000/chat

Estrutura de Pastas

  • furia-chatbot
    • public/assets
    • src
      • app
      • components
      • services
      • styles
      • types
    • prisma
    • scripts
    • .env
    • README.md
    • .gitignore
    • package-lock.json
    • package.json