https://github.com/heitorpolidoro/nexdom
Sistema de Gestão de Controle de Tarefas
https://github.com/heitorpolidoro/nexdom
fastapi python sqlmodel task-management
Last synced: about 19 hours ago
JSON representation
Sistema de Gestão de Controle de Tarefas
- Host: GitHub
- URL: https://github.com/heitorpolidoro/nexdom
- Owner: heitorpolidoro
- Created: 2026-04-20T22:56:49.000Z (3 months ago)
- Default Branch: master
- Last Pushed: 2026-06-12T18:14:10.000Z (27 days ago)
- Last Synced: 2026-06-12T18:25:01.138Z (27 days ago)
- Topics: fastapi, python, sqlmodel, task-management
- Language: TypeScript
- Homepage: https://sigecon-back.vercel.app
- Size: 824 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
# NEXDOM — Sistema de Gestão de Condomínios e Associações
O **Nexdom** é uma plataforma web para gestão de condomínios e associações. O módulo atual cobre a gestão de tarefas da administração: criação, atribuição, acompanhamento de status, comentários e auditoria completa de alterações, com controle de acesso por papéis.
- **Frontend (produção):** https://nexdom-front.vercel.app
- **Backend (produção):** https://nexdom-back.vercel.app
## Funcionalidades
- **Gestão de tarefas** com categorias, prioridades, status e atribuição a usuários
- **Controle de acesso (RBAC)** com três papéis: Administrador, Diretor e Gerente
- **Auditoria** — todo histórico de alterações de uma tarefa é registrado e exibido na linha do tempo
- **Comentários** por tarefa
- **Internacionalização** (pt-BR e en) via i18next
## Tecnologias
### Backend
- **Linguagem:** Python 3.13
- **Framework:** FastAPI
- **ORM:** SQLModel (SQLAlchemy) com migrações via Alembic
- **Banco de Dados:** PostgreSQL 16
- **Autenticação:** JWT (PyJWT) + bcrypt, rate limiting com slowapi
- **Gerenciador de Pacotes:** uv
### Frontend
- **Framework:** React 19 (TypeScript)
- **Build Tool:** Vite
- **Estilização:** Tailwind CSS + Radix UI
- **Estado de servidor:** TanStack Query
## Execução local
### Docker Compose (tudo junto)
```bash
docker compose up --build
# backend → http://localhost:8001
# frontend → http://localhost:3001
# postgres → localhost:5436
```
### Manual
```bash
# Backend
cd backend
uv sync --all-groups
uv run uvicorn app.main:app --reload --port 8001
# Frontend
cd frontend
npm install
npm run dev # http://localhost:3000
```
As configurações de ambiente (banco de dados, chaves secretas, etc.) ficam em `backend/.env` e `frontend/.env.local` — veja o `CLAUDE.md` para os valores de desenvolvimento.
## Testes
```bash
# Backend (cobertura mínima: 90%)
cd backend && uv run pytest --cov=app tests/
# Frontend (cobertura mínima: 75%)
cd frontend && npm run test:coverage
```
## Deploy
O deploy é feito na **Vercel** (projetos `nexdom-front` e `nexdom-back`). Todo merge na branch `master` dispara automaticamente o deploy de produção dos dois projetos via integração Git. As migrações de banco rodam no GitHub Actions (`migrate.yml`) a cada push na `master`.
## Contribuição e Fluxo de Trabalho
Branches de feature (`feat/`), commits descritivos e Pull Requests para a branch principal (`master`). O CI (GitHub Actions) roda testes de backend e frontend com gates de cobertura, além de análise no SonarCloud e DeepSource — um PR só pode ser mergeado com todos os checks verdes.
## Segurança
Autenticação via JWT (HS256) e controle de acesso baseado em papéis (RBAC) — Administrador, Diretor e Gerente, com permissões distintas para tarefas e categorias. Credenciais sensíveis são gerenciadas via variáveis de ambiente.