# Sistema de Protocolo de Treino e Dieta com IA Sistema completo de geração de planos de treino e dieta personalizados usando Inteligência Artificial, com autenticação de usuários e banco de dados SQLite. ## 🚀 Funcionalidades - ✅ **Sistema de Login/Cadastro** com autenticação segura - ✅ **Painel Administrativo** para gerenciar usuários e visualizar estatísticas - ✅ **Banco de dados SQLite** para persistência de dados - ✅ **Geração de planos personalizados** via IA - ✅ **Edição completa** de exercícios e dieta - ✅ **Sistema de gamificação** (pontos, sequência, conquistas) - ✅ **Treino ao vivo** com controle de séries - ✅ **Responsivo** e otimizado para mobile ## 📁 Estrutura do Projeto ``` protocol/ ├── index.html # Aplicativo principal (frontend) ├── public/ │ ├── auth.php # Sistema de autenticação e gerenciamento de dados │ ├── .htaccess # Configuração Apache │ ├── assets/ # Recursos estáticos │ ├── css/ # Arquivos CSS adicionais │ └── js/ # Arquivos JavaScript adicionais └── data/ └── users.db # Banco de dados SQLite (criado automaticamente) ``` ## 🔧 Instalação e Configuração ### 1. Pré-requisitos - WAMP, XAMPP ou qualquer servidor Apache com PHP 7.4+ - SQLite3 habilitado no PHP (geralmente já vem habilitado) - Acesso à internet (para TailwindCSS CDN e ícones Lucide) ### 2. Instalação 1. **Clone ou copie** os arquivos para a pasta do seu servidor web: ```bash c:\wamp64\www\protocol\ ``` 2. **Verifique as permissões** da pasta `data/`: - A pasta `data/` precisa ter permissão de escrita para o servidor criar o banco de dados - No Windows (WAMP), geralmente não é necessário alterar permissões 3. **Acesse o sistema** no navegador: ``` http://localhost/protocol/ ``` ### 3. Primeira Execução 1. O sistema irá carregar a tela de **Login** 2. Clique em **"Cadastre-se"** para criar sua conta 3. Preencha: - Nome completo - Email - Senha (mínimo 6 caracteres) - Confirme a senha 4. Após o cadastro, você será redirecionado para a tela de **Geração de Protocolo** ### 4. Acesso Administrativo O sistema cria automaticamente uma conta de administrador: ``` Email: admin@protocol.com Senha: admin123 ``` 📖 **Veja o guia completo em**: [ADMIN.md](ADMIN.md) ## 📝 Como Usar ### Criar seu Plano 1. Após fazer login, preencha o formulário com: - Nome completo - Idade e sexo - Peso e altura - Objetivo (Hipertrofia, Emagrecimento, Força, Resistência) - Nível de experiência - Disponibilidade semanal - Observações (opcional: restrições alimentares, lesões, etc.) 2. Clique em **"Gerar Protocolo com IA"** 3. A IA irá criar: - Plano de treino semanal completo - Plano alimentar personalizado - Lista de compras ### Treinar 1. No **Dashboard**, clique em **"Treinar Agora"** 2. Marque as séries conforme completar 3. Clique em **"Finalizar Treino"** ao terminar 4. Ganhe pontos e aumente sua sequência! ### Editar Planos - **Treinos**: Clique em "Meu Plano" → Expanda o dia → Clique no ícone de edição - **Dieta**: Clique em "Dieta" → Expanda a refeição → Edite os alimentos - **Adicionar itens**: Use os botões "+ Adicionar" em cada seção ## 🔐 Segurança - Senhas são criptografadas com `password_hash()` (bcrypt) - Sessões PHP protegem rotas autenticadas - Validação de email e dados no backend - Proteção contra SQL injection (uso de prepared statements) ## 🗄️ Banco de Dados O sistema cria automaticamente duas tabelas no SQLite: ### Tabela `users` - `id`: ID único do usuário - `email`: Email (único) - `password`: Senha criptografada - `nome`: Nome completo - `created_at`: Data de criação ### Tabela `user_data` - `id`: ID único - `user_id`: Referência ao usuário - `workout_plan`: Plano de treino (JSON) - `diet_plan`: Plano de dieta (JSON) - `user_stats`: Estatísticas (pontos, sequência) (JSON) - `user_info`: Dados pessoais (peso, altura, etc.) (JSON) - `last_workout_date`: Data do último treino ## 🎯 Gamificação ### Sistema de Pontos - **10 pontos** por série completada - Acumule pontos para desbloquear conquistas ### Conquistas - 🏋️ **Iniciante** - 100 pontos - 🔥 **Em Chamas** - 500 pontos - 🏆 **Aprendiz** - 1.000 pontos - 🎖️ **Consistente** - 1.500 pontos - ⚡ **Guerreiro FDS** - 2.000 pontos - 📅 **Profissional** - 5.000 pontos - ⭐ **Aluno Estrela** - 10.000 pontos - ☀️ **Pássaro Madrugador** - 15.000 pontos ## 🔄 API de IA O sistema usa um webhook externo para gerar os planos: - Endpoint: `https://webhook.nexuinsolution.com.br/webhook/gerador` - Método: POST - Retorna: JSON com plano de treino e dieta ### Configurar sua própria API Edite o arquivo `auth.php` ou `index.html` e altere a URL do webhook para sua API de IA. ## 🛠️ Tecnologias Utilizadas - **Frontend**: HTML5, TailwindCSS, JavaScript (Vanilla) - **Backend**: PHP 7.4+ - **Banco de Dados**: SQLite3 - **Ícones**: Lucide Icons - **Fontes**: Google Fonts (Inter) ## 📱 Responsividade O sistema é totalmente responsivo e otimizado para: - 📱 Mobile (iOS/Android) - 💻 Desktop - 📲 PWA-ready (pode ser instalado como app) ## 🐛 Troubleshooting ### Tela preta ao abrir - Verifique se o servidor está rodando - Abra o console do navegador (F12) para ver erros - Verifique se o arquivo `auth.php` está acessível ### Erro ao fazer login - Verifique se a pasta `data/` tem permissão de escrita - Confirme que o SQLite3 está habilitado no PHP - Verifique os logs de erro do Apache ### Planos não são salvos - Verifique a conexão com o banco de dados - Abra o console do navegador para ver erros de rede - Confirme que você está logado (sessão ativa) ## 📄 Licença Este projeto é de código aberto e pode ser modificado livremente. ## 🤝 Contribuições Contribuições são bem-vindas! Sinta-se à vontade para: - Reportar bugs - Sugerir novas funcionalidades - Melhorar a documentação - Enviar pull requests --- **Desenvolvido com 💪 para ajudar você a alcançar seus objetivos fitness!**