docs: Adicionar README completo com documentação do projeto
This commit is contained in:
211
README.md
Normal file
211
README.md
Normal file
@@ -0,0 +1,211 @@
|
||||
# 🚀 VIDA180 - Plataforma de Transformação Pessoal
|
||||
|
||||
Sistema completo de gerenciamento de hábitos, tarefas e métricas de saúde para ajudar você a transformar sua vida em 180 dias.
|
||||
|
||||
## 📋 Funcionalidades
|
||||
|
||||
### ✅ Gerenciamento de Tarefas
|
||||
- Criar, editar e excluir tarefas
|
||||
- Definir prioridades (baixa, média, alta)
|
||||
- Definir status (pendente, em progresso, concluída)
|
||||
- Filtrar tarefas por status
|
||||
- Visualizar tarefas de hoje
|
||||
- Estatísticas detalhadas
|
||||
|
||||
### 💪 Métricas de Saúde
|
||||
- Registrar peso, altura e % de gordura
|
||||
- Registrar massa muscular
|
||||
- Registrar medidas (cintura, peito, quadril)
|
||||
- Histórico completo de medições
|
||||
- Acompanhar variação de peso
|
||||
- Estatísticas e resumo
|
||||
|
||||
### 🎯 Hábitos
|
||||
- Criar e gerenciar hábitos diários
|
||||
- Marcar hábitos como concluídos
|
||||
- Acompanhar sequências (streaks)
|
||||
- Estatísticas de conclusão
|
||||
|
||||
### 📈 Progresso
|
||||
- Dashboard consolidado com todas as estatísticas
|
||||
- Visualização de progresso em hábitos, tarefas e saúde
|
||||
- Mensagens motivacionais
|
||||
|
||||
### 👨💼 Painel Administrativo
|
||||
- Gerenciamento de usuários (apenas superadmin)
|
||||
- Gerenciamento de mensagens diárias motivacionais
|
||||
|
||||
## 🛠️ Tecnologias
|
||||
|
||||
### Backend
|
||||
- **FastAPI** - Framework web Python moderno e rápido
|
||||
- **PostgreSQL** - Banco de dados relacional
|
||||
- **SQLAlchemy** - ORM para Python
|
||||
- **Redis** - Cache e gerenciamento de sessões
|
||||
- **JWT** - Autenticação segura
|
||||
- **Argon2** - Hash de senhas
|
||||
|
||||
### Frontend
|
||||
- **React** com **TypeScript**
|
||||
- **CSS Modules** - Estilização componentizada
|
||||
- Design moderno com gradientes coloridos
|
||||
- Interface responsiva
|
||||
|
||||
### DevOps
|
||||
- **Docker** e **Docker Compose**
|
||||
- **Nginx** - Proxy reverso
|
||||
- Containerização completa
|
||||
|
||||
## 🚀 Instalação e Execução
|
||||
|
||||
### Pré-requisitos
|
||||
- Docker
|
||||
- Docker Compose
|
||||
|
||||
### Passos
|
||||
|
||||
1. Clone o repositório:
|
||||
```bash
|
||||
git clone https://meurepositorio.com/sergio.correa/vida180.git
|
||||
cd vida180
|
||||
```
|
||||
|
||||
2. Configure as variáveis de ambiente:
|
||||
```bash
|
||||
cp backend/.env.example backend/.env
|
||||
# Edite o arquivo .env com suas configurações
|
||||
```
|
||||
|
||||
3. Inicie os containers:
|
||||
```bash
|
||||
docker-compose up -d
|
||||
```
|
||||
|
||||
4. Acesse a aplicação:
|
||||
- Frontend: http://localhost:3200
|
||||
- Backend API: http://localhost:8000
|
||||
- Documentação API: http://localhost:8000/docs
|
||||
|
||||
## 📦 Estrutura do Projeto
|
||||
|
||||
```
|
||||
vida180/
|
||||
├── backend/
|
||||
│ ├── app/
|
||||
│ │ ├── api/ # Endpoints da API
|
||||
│ │ │ ├── auth.py
|
||||
│ │ │ ├── habits.py
|
||||
│ │ │ ├── health.py
|
||||
│ │ │ ├── tasks.py
|
||||
│ │ │ ├── messages.py
|
||||
│ │ │ └── admin.py
|
||||
│ │ ├── core/ # Configurações core
|
||||
│ │ ├── models/ # Modelos do banco de dados
|
||||
│ │ ├── schemas/ # Schemas Pydantic
|
||||
│ │ └── services/ # Serviços e lógica de negócio
|
||||
│ ├── Dockerfile
|
||||
│ └── requirements.txt
|
||||
├── frontend/
|
||||
│ ├── src/
|
||||
│ │ ├── components/ # Componentes reutilizáveis
|
||||
│ │ ├── contexts/ # Contexts do React
|
||||
│ │ ├── pages/ # Páginas da aplicação
|
||||
│ │ │ ├── Dashboard.tsx
|
||||
│ │ │ ├── Habits.tsx
|
||||
│ │ │ ├── Tasks.tsx
|
||||
│ │ │ ├── Health.tsx
|
||||
│ │ │ ├── Progress.tsx
|
||||
│ │ │ └── Admin.tsx
|
||||
│ │ └── App.tsx
|
||||
│ ├── Dockerfile
|
||||
│ └── package.json
|
||||
├── nginx/ # Configuração do Nginx
|
||||
└── docker-compose.yml
|
||||
```
|
||||
|
||||
## 🔐 Autenticação
|
||||
|
||||
O sistema utiliza JWT (JSON Web Tokens) para autenticação. Todas as rotas protegidas requerem um token válido no header:
|
||||
|
||||
```
|
||||
Authorization: Bearer <token>
|
||||
```
|
||||
|
||||
## 📡 API Endpoints
|
||||
|
||||
### Autenticação
|
||||
- `POST /api/v1/auth/register` - Registrar novo usuário
|
||||
- `POST /api/v1/auth/login` - Login
|
||||
|
||||
### Hábitos
|
||||
- `GET /api/v1/habits/` - Listar hábitos
|
||||
- `POST /api/v1/habits/` - Criar hábito
|
||||
- `POST /api/v1/habits/{id}/complete` - Marcar como completo
|
||||
- `DELETE /api/v1/habits/{id}` - Deletar hábito
|
||||
- `GET /api/v1/habits/stats` - Estatísticas
|
||||
|
||||
### Tarefas
|
||||
- `GET /api/v1/tasks/` - Listar tarefas
|
||||
- `POST /api/v1/tasks/` - Criar tarefa
|
||||
- `GET /api/v1/tasks/today` - Tarefas de hoje
|
||||
- `PUT /api/v1/tasks/{id}` - Atualizar tarefa
|
||||
- `PATCH /api/v1/tasks/{id}/status` - Atualizar status
|
||||
- `DELETE /api/v1/tasks/{id}` - Deletar tarefa
|
||||
- `GET /api/v1/tasks/stats/summary` - Estatísticas
|
||||
|
||||
### Saúde
|
||||
- `GET /api/v1/health/` - Listar métricas
|
||||
- `POST /api/v1/health/` - Registrar métrica
|
||||
- `GET /api/v1/health/latest` - Última métrica
|
||||
- `PUT /api/v1/health/{id}` - Atualizar métrica
|
||||
- `DELETE /api/v1/health/{id}` - Deletar métrica
|
||||
- `GET /api/v1/health/stats/summary` - Estatísticas
|
||||
|
||||
### Mensagens
|
||||
- `GET /api/v1/messages/daily` - Mensagem motivacional do dia
|
||||
|
||||
### Admin (apenas superadmin)
|
||||
- `GET /api/v1/admin/users` - Listar usuários
|
||||
- `POST /api/v1/admin/users/{id}/toggle-active` - Ativar/desativar
|
||||
- `GET /api/v1/admin/messages` - Listar mensagens
|
||||
- `POST /api/v1/admin/messages` - Criar mensagem
|
||||
- `DELETE /api/v1/admin/messages/{id}` - Deletar mensagem
|
||||
|
||||
## 🎨 Design
|
||||
|
||||
O sistema possui design moderno com:
|
||||
- Gradientes coloridos personalizados para cada seção
|
||||
- Interface responsiva
|
||||
- Animações suaves
|
||||
- Cards com efeitos hover
|
||||
- Estatísticas visuais
|
||||
|
||||
## 🔧 Desenvolvimento
|
||||
|
||||
### Backend
|
||||
```bash
|
||||
cd backend
|
||||
pip install -r requirements.txt
|
||||
uvicorn app.main:app --reload
|
||||
```
|
||||
|
||||
### Frontend
|
||||
```bash
|
||||
cd frontend
|
||||
npm install
|
||||
npm start
|
||||
```
|
||||
|
||||
## 📝 Licença
|
||||
|
||||
Este projeto é propriedade privada.
|
||||
|
||||
## 👨💻 Autor
|
||||
|
||||
**Sergio Correa**
|
||||
- Repositório: [https://meurepositorio.com/sergio.correa/vida180.git](https://meurepositorio.com/sergio.correa/vida180.git)
|
||||
|
||||
---
|
||||
|
||||
**VIDA180** - Transforme sua vida em 180 dias! 🚀💪
|
||||
|
||||
Reference in New Issue
Block a user