Uma aplicação completa para gestão de consórcios, desenvolvida com React + Material UI no frontend e Express + MySQL no backend.
- Autenticação JWT - Sistema de login seguro para gestores
- Dashboard Completo - Visão geral dos consórcios ativos e fechados
- Gestão de Participantes - CRUD completo para participantes
- Gestão de Consórcios - CRUD completo para consórcios
- Sistema de Cotas - Participantes podem ter de 0.5 a 3.0 cotas
- Interface Responsiva - Design moderno com Material UI
- Validação de Dados - Validação tanto no frontend quanto no backend
| Frontend | Backend | Database | DevOps |
|---|---|---|---|
|
|
|
|
|
- Node.js 16+
- MySQL 8.0+
- npm ou yarn
git clone <url-do-repositorio>
cd ConsorcioManagercd backend
npm installCopie o arquivo .env.example para .env e configure suas variáveis:
cp .env.example .envConfigure as variáveis no arquivo .env:
PORT=5000
DB_NAME=consorcio_manager
DB_USER=seu_usuario
DB_PASSWORD=sua_senha
DB_HOST=localhost
JWT_SECRET=sua_chave_secreta_super_forte_aquiCrie o banco de dados MySQL:
CREATE DATABASE consorcio_manager CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;Inicialize as tabelas:
node scripts/initDatabase.jscd ../frontend
npm installCopie o arquivo .env.example para .env:
cp .env.example .envcd backend
npm install
npm run dev🌐 Backend: http://localhost:5000
cd frontend
npm install
npm run dev🎨 Frontend: http://localhost:3000
npm start # Produção
npm run dev # Desenvolvimento com nodemon
npm test # Executar testes
npm run test:watch # Testes em modo watch
npm run init-db # Inicializar banco de dadosnpm run dev # Servidor de desenvolvimento
npm run build # Build para produção
npm run preview # Preview do build- ✅ Registro e login de gestores
- ✅ Perfil do gestor
- ✅ Dashboard com estatísticas
- ✅ Cadastro de participantes
- ✅ Lista com busca e paginação
- ✅ Edição e exclusão
- ✅ Visualização de detalhes
- ✅ PIX/IBAN para pagamentos
- ✅ Criação de consórcios
- ✅ Lista com filtros por status
- ✅ Edição e exclusão
- ✅ Visualização de detalhes
- ✅ Adição/remoção de participantes
- ✅ Sistema de cotas (0.5 a 3.0)
ConsorcioManager/
├── backend/
│ ├── config/ # Configurações do banco
│ ├── models/ # Modelos Sequelize
│ ├── routes/ # Rotas da API
│ ├── middleware/ # Middlewares
│ ├── scripts/ # Scripts utilitários
│ └── server.js # Servidor principal
├── frontend/
│ ├── src/
│ │ ├── components/ # Componentes React
│ │ ├── pages/ # Páginas da aplicação
│ │ ├── contexts/ # Context providers
│ │ └── services/ # Serviços da API
│ └── public/ # Arquivos estáticos
└── README.md
- Senhas hashadas com bcrypt
- Autenticação JWT
- Validação de dados no backend
- Rate limiting
- Helmet para headers de segurança
- CORS configurado
- gestores - Dados dos gestores
- participantes - Dados dos participantes
- consorcios - Dados dos consórcios
- consorcio_participantes - Relação many-to-many
- Fork o projeto
- Crie uma branch para sua feature (
git checkout -b feature/AmazingFeature) - Commit suas mudanças (
git commit -m 'Add some AmazingFeature') - Push para a branch (
git push origin feature/AmazingFeature) - Abra um Pull Request
Este projeto está sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.
Se você encontrar algum problema, por favor abra uma issue no repositório.
Feito com ❤️ para gestão de consórcios