Um Progressive Web App (PWA) moderno para gerenciar suas tarefas diárias
- CRUD completo - Criar, editar, concluir e excluir tarefas
- Gestão de prazos - Defina datas limite para suas tarefas
- Status inteligente - Pendente, Concluída e Atrasada (automático)
- Tarefas do dia - Seção dedicada para tarefas com prazo hoje
- Interface moderna - Design glassmorphism com gradientes elegantes
- Instalável - Funciona como app nativo no desktop e mobile
- Offline-first - Funciona sem conexão com internet
- Auto-atualização - Notifica e atualiza automaticamente
- Cache inteligente - Performance otimizada
- Ícones personalizados - Visual profissional em todas as plataformas
- Gradientes elegantes - Tema roxo/rosa vibrante
- Fontes modernas - Inter, Poppins e Space Grotesk
- Responsivo - Adapta-se a qualquer tamanho de tela
- Animações suaves - Hover effects e transições
- Status visuais - Cores diferenciadas para cada estado
- Python 3.x
- Flask - Framework web minimalista
- SQLite - Banco de dados local
- SQLAlchemy - ORM para Python
- HTML5 - Estrutura semântica
- CSS3 - Estilização moderna com gradientes e glassmorphism
- JavaScript ES6+ - Funcionalidades interativas
- PWA - Service Worker para funcionalidade offline
gerenciador_tarefas/
├── 📂 backend/ # Servidor Flask
│ ├── app.py # Aplicação principal
│ ├── models.py # Modelos do banco de dados
│ ├── database.py # Configuração do banco
│ ├── requirements.txt # Dependências Python
│ ├── 📂 routes/
│ │ └── tasks.py # Rotas da API
│ └── 📂 instance/
│ └── database.db # Banco SQLite
├── 📂 frontend/ # Interface do usuário
│ ├── index.html # Página principal
│ ├── manifest.json # Configuração PWA
│ ├── sw.js # Service Worker
│ ├── 📂 css/
│ │ └── style.css # Estilos modernos
│ ├── 📂 js/
│ │ └── main.js # Lógica da aplicação
│ └── 📂 icons/ # Ícones do PWA
│ ├── icon-16x16.png
│ ├── icon-32x32.png
│ └── ... (vários tamanhos)
└── README.md # Este arquivo
- Python 3.7+ instalado
- pip (gerenciador de pacotes Python)
- Navegador moderno (Chrome, Firefox, Edge, Safari)
-
Clone o repositório
git clone <https://github.com/Felipewv93/Gerenciador_Tarefas.git> cd gerenciador_tarefas
-
Configure o backend
cd backend pip install -r requirements.txt python app.pyServidor rodando em: http://localhost:5000
-
Inicie o frontend
# Em outro terminal cd frontend python -m http.server 8080
App disponível em: http://localhost:8080
-
Instale como PWA
- Abra http://localhost:8080 no navegador
- Clique no botão "Instalar App"
- Confirme a instalação
- Use como aplicativo nativo!
- Clique em "+ Nova Tarefa" no canto superior direito
- Preencha nome e descrição
- Defina prazo (opcional)
- Clique "Salvar"
- Clique no botão "Editar" na tarefa desejada
- Modifique as informações
- Clique "Salvar Alterações"
- Clique no botão "Concluir" na tarefa
- Status muda automaticamente para "Concluída"
- Clique no botão "Excluir" na tarefa
- Confirme a exclusão
- Pendente - Tarefa criada, aguardando conclusão
- Atrasada - Prazo vencido e não concluída
- Concluída - Tarefa finalizada com sucesso
- Funciona mesmo sem internet
- Dados salvos localmente
- Sincroniza quando volta online
- Notificações de status de conexão
- Notifica quando há nova versão
- Atualização com um clique
- Cache inteligente mantém performance
- Instala como aplicativo no Windows/Mac/Linux
- Funciona em smartphones e tablets
- Ícone personalizado na área de trabalho
- Inicialização rápida
Edite as variáveis CSS em frontend/css/style.css
Altere as importações no frontend/index.html:
<link href="https://fonts.googleapis.com/css2?family=SuaFonte:wght@300;400;500;600;700&display=swap">Modifique frontend/manifest.json:
{
"name": "Seu Nome do App",
"short_name": "App",
"theme_color": "#sua-cor",
"background_color": "#sua-cor-de-fundo"
}GET /tasks
Retorna: Lista de todas as tarefasGET /tasks/today
Retorna: Tarefas com prazo para hojePOST /tasks
Body: {
"nome": "Nome da tarefa",
"descricao": "Descrição",
"prazo": "2025-10-10" (opcional)
}PUT /tasks/<id>
Body: {
"nome": "Nome atualizado",
"descricao": "Nova descrição",
"prazo": "2025-10-15"
}PUT /tasks/<id>/completeDELETE /tasks/<id>- Configure um servidor web (Apache, Nginx)
- Aponte para a pasta
frontend/ - Configure proxy reverso para API Flask
- Configure SSL para PWA em produção
- Frontend: Netlify, Vercel, GitHub Pages
- Backend: Heroku, Railway, DigitalOcean
- Banco: PostgreSQL, MongoDB Atlas
Se este projeto te ajudou, considere dar uma estrela!