Template Base para Novos Projetos
Este projeto possui código-fonte privado hospedado no GitHub e é protegido por licença proprietária da Cara Core Informática. A documentação aqui presente tem caráter informativo sobre a estrutura e padrões utilizados no template.
O Cara Core Seed é como um "molde" ou "receita básica" para criar novos projetos. Imagine que você tem uma receita de bolo que sempre dá certo - o Seed é isso, mas para criar aplicativos web.
Por que é importante:
Boilerplate Flask seguindo Clean Architecture e Domain-Driven Design (DDD). Implementa estrutura modular com separação clara entre camadas e responsabilidades.
Componentes inclusos:
A estrutura do Seed é como organizar uma casa bem planejada - cada coisa tem seu lugar e você sempre sabe onde encontrar o que precisa:
caracore-seed/
├── app/
│ ├── __init__.py # App factory
│ ├── config.py # Configurações por ambiente
│ ├── models/ # SQLAlchemy models
│ ├── views/ # Blueprint controllers
│ ├── services/ # Business logic layer
│ ├── utils/ # Helper functions
│ └── static/ # Assets (CSS, JS, images)
├── tests/
│ ├── unit/ # Testes unitários
│ ├── integration/ # Testes de integração
│ └── fixtures/ # Test data
├── migrations/ # Alembic migrations
├── docker/
│ ├── Dockerfile # Production image
│ ├── Dockerfile.dev # Development image
│ └── docker-compose.yml # Services orchestration
├── scripts/
│ ├── setup.py # Environment setup
│ ├── test.py # Test runner
│ └── deploy.py # Deployment utilities
└── docs/ # Project documentation
Para leigos: Sistema de login seguro que lembra quem você é sem precisar fazer login toda hora.
Técnico: JWT tokens com refresh, middleware de autenticação, decorators para proteção de rotas.
Para leigos: Sistema que conversa com o banco de dados usando Python normal, sem precisar aprender SQL.
Técnico: SQLAlchemy com models, migrations automáticas via Alembic, connection pooling configurado.
Para leigos: "Robôs" que testam o código automaticamente para garantir que nada quebrou.
Técnico: pytest suite, fixtures, mocks, coverage reporting, CI integration.
Para leigos: O código vai direto para o "ar" (internet) automaticamente quando você termina uma feature.
Técnico: GitHub Actions pipeline, Azure App Service integration, Docker multi-stage builds.
Com o Seed, um projeto que normalmente levaria 2-3 dias para configurar fica pronto em 15 minutos!
# 1. Clonar template
git clone https://github.com/cara-core/seed meu-projeto
cd meu-projeto
# 2. Renomear projeto
python scripts/rename_project.py "MeuProjeto"
# 3. Setup ambiente
python scripts/setup.py --dev
# 4. Ativar ambiente virtual
venv\Scripts\activate # Windows
source venv/bin/activate # Linux/Mac
# 5. Instalar dependências
pip install -r requirements/dev.txt
# 6. Configurar banco
flask db upgrade
# 7. Seed inicial de dados
python scripts/seed_data.py
# 8. Executar aplicação
flask run --debug
Use o script scripts/new_module.py para gerar automaticamente a estrutura de novos módulos com models, views, services e testes já configurados!
# .env.example
FLASK_APP=app
FLASK_ENV=development
SECRET_KEY=sua-chave-super-secreta
DATABASE_URL=sqlite:///app.db
REDIS_URL=redis://localhost:6379
JWT_SECRET_KEY=jwt-secret-key
JWT_ACCESS_TOKEN_EXPIRES=3600
AZURE_STORAGE_CONNECTION_STRING=...
SENDGRID_API_KEY=...
SENTRY_DSN=...
Envio de emails via SendGrid com templates HTML responsivos.
flask module add email
Upload seguro para Azure Blob Storage com validação e resize.
flask module add uploads
Tracking de eventos customizado com dashboards integrados.
flask module add analytics
Integração com Stripe para pagamentos seguros.
flask module add payments
WebSocket chat com Socket.IO e notificações push.
flask module add chat
2FA, rate limiting, audit logs e security headers.
flask module add security
# Setup completo
python scripts/setup.py --dev
# Gerar novo módulo
python scripts/new_module.py users
# Executar testes
python scripts/test.py --coverage
# Limpar cache e build
python scripts/clean.py
# Gerar dados fake para testes
python scripts/seed_data.py --fake
# Build de produção
python scripts/build.py --prod
# Deploy para staging
python scripts/deploy.py --env staging
# Deploy para produção
python scripts/deploy.py --env production
# Backup do banco
python scripts/backup.py --database
# Monitorar logs
python scripts/monitor.py --tail
O Seed inclui geradores automáticos de código que criam models, views, testes e documentação baseados em templates. Use flask generate --help para ver todas as opções.
Sistema de gerenciamento centralizado baseado no Seed com extensões para orquestração de microserviços.
Plataforma de autenticação empresarial que aproveitou toda a base de segurança do Seed.
O Seed está sempre evoluindo com novas features e melhorias!