[EN] | [PT]
Clinic SaaS is a fullstack application designed for end-to-end management of medical clinics and health centers. It includes scheduling, patient records, clinical workflows, operations, and a patient portal.

- Role-based authentication (Admin, Doctor, Receptionist, Patient) with JWT; optional email 2FA on backend
- Admin dashboard with KPIs, charts, and alerts
- Patients CRUD with status control and full medical record (notes, evolutions, prescriptions, documents, authorizations)
- Appointments agenda with filters, creation/editing, check-in workflow, and attend screen
- Waiting list (queue) with status changes and filters
- Professionals and rooms management
- Health insurance (convênios) management and authorization requests
- Inventory (stock) management
- Patient portal with appointments, prescriptions, documents, receipts, and history
- AI clinical assistant panel during attendance
- Financial module scaffold (UI placeholder)
The system includes a smart AI-assisted anamnesis feature that supports clinical intake with dynamic suggestions and summaries during attendance.
Features:
- Dynamic question prompts based on the consultation context
- Support for structured fields and free text
- Automatic summarization of key findings
- Designed to speed up documentation during care
Example: When starting a consultation for abdominal pain, the system suggests diagnostic-oriented questions, such as presence of fever, pain characteristics, dietary history, and current medications. The AI summarizes the answers and highlights potential clinical hypotheses.
Backend
- Python 3.11+
- FastAPI
- PostgreSQL
- SQLAlchemy + Alembic
- Redis
- Pydantic v2
- JWT Auth
Frontend
- Node.js v18+
- Next.js 13+ (App Router)
- TypeScript
- TailwindCSS
- shadcn/ui
- Zod
- SWR
DevOps
- Docker + Docker Compose
- Minio (S3 compatible storage)
- Nginx (optional)
- Docker & Docker Compose installed
.envfile configured properly for backend and frontend
# Clone the repository
git clone https://github.com/matfurrier/clinicmanager.git
cd clinicmanager
# Start services
docker-compose up --buildThe app will be available at:
- Frontend:
http://localhost:3000 - Backend:
http://localhost:8000/docs(FastAPI Swagger UI)
Once running:
-
Admin user can log in via
/loginand configure:- Professionals and specialties
- Rooms and clinic structure
- Health insurances (convênios)
- Inventory items
-
Patients can access the portal at
/portal/:patientIdto view:- Upcoming appointments
- Prescriptions, medical documents, and receipts
- Full history and authorization requests
-
Doctors can:
- Access patient records, clinical notes, and evolutions
- Attend appointments, finalize status, and register evolutions
- Generate prescriptions and medical documents
-
Reception can:
- Manage the waiting list and check-ins
- Handle appointments and patient flow
-
The financial module UI is present but currently disabled (placeholder).
The frontend supports MSW-based API mocking for demos.
- Set
NEXT_PUBLIC_API_MOCKING=enabledin the frontend environment. - Use demo credentials:
admin@admin.com/admin123user@demo.com/admin123moderator@demo.com/admin123
Contributions, issues and feature requests are welcome!
Feel free to check the issues page.
This project is licensed under the MIT License. See the LICENSE file for more details.
Mateus Furrier - matfurrier@gmail.com
Project Link: https://www.furrierlabs.com.br/clinicsaas
If this project helped you, give it a ⭐️!
Clinic SaaS é uma aplicação fullstack para a gestão completa de clínicas médicas e centros de saúde. Inclui agendamento, prontuário, operações clínicas e portal do paciente.

- Autenticação com perfis (Admin, Médico, Recepção, Paciente) e JWT; 2FA por email no backend
- Dashboard com KPIs, gráficos e alertas
- Cadastro de pacientes com controle de status e prontuário completo (anotações, evoluções, prescrições, documentos, autorizações)
- Agenda com filtros, criação/edição, check-in e tela de atendimento
- Fila de espera com atualização de status e filtros
- Gestão de profissionais e salas
- Gestão de convênios e solicitações de autorização
- Gestão de estoque
- Portal do paciente com consultas, prescrições, documentos, recibos e histórico
- Assistente clínico com IA durante o atendimento
- Módulo financeiro em modo placeholder (UI desativada)
O sistema oferece um recurso de anamnese assistida por IA que apoia o atendimento com perguntas e resumos dinâmicos durante a consulta.
Funcionalidades:
- Geração dinâmica de perguntas conforme o contexto da consulta
- Compatível com campos estruturados e texto livre
- Resumo automático dos principais achados
- Focado em acelerar a documentação clínica
Exemplo de uso: Ao iniciar uma consulta de dor abdominal, o sistema sugere perguntas clínicas orientadas para diagnóstico diferencial, como presença de febre, tipo da dor, histórico alimentar e uso de medicamentos. A IA resume as respostas e destaca possíveis hipóteses clínicas.
Backend
- Python 3.11+
- FastAPI
- PostgreSQL
- SQLAlchemy + Alembic
- Redis
- Pydantic v2
- JWT Auth
Frontend
- Node.js v18+
- Next.js 13+ (App Router)
- TypeScript
- TailwindCSS
- shadcn/ui
- Zod
- SWR
DevOps
- Docker + Docker Compose
- Minio (armazenamento compatível com S3)
- Nginx (opcional)
- Docker e Docker Compose instalados
- Arquivo
.envconfigurado corretamente
# Clonar o repositório
git clone https://github.com/matfurrier/clinicmanager.git
cd clinicmanager
# Iniciar os serviços
docker-compose up --buildO sistema estará disponível em:
- Frontend:
http://localhost:3000 - Backend:
http://localhost:8000/docs(FastAPI Swagger UI)
Após iniciar:
-
O administrador acessa
/logine configura:- Profissionais e especialidades
- Salas e estrutura da clínica
- Convênios
- Itens de estoque
-
Os pacientes podem acessar o portal em
/portal/:patientIdpara:- Ver consultas futuras
- Acessar prescrições, documentos médicos e recibos
- Consultar histórico e autorizações
-
Os médicos podem:
- Acessar prontuário, anotações e evoluções
- Atender consultas, finalizar atendimentos e registrar evoluções
- Gerar prescrições e documentos
-
A recepção pode:
- Gerenciar a fila de espera e check-ins
- Controlar o fluxo de atendimentos
-
O módulo financeiro está presente, porém desativado (placeholder).
O frontend suporta mocks via MSW para demonstração.
- Defina
NEXT_PUBLIC_API_MOCKING=enabledno ambiente do frontend. - Use as credenciais de demonstração:
admin@admin.com/admin123user@demo.com/admin123moderator@demo.com/admin123
Sugestões, issues e pull requests são bem-vindos!
Confira em: https://github.com/matfurrier/clinicmanager/issues
Este projeto está licenciado sob a Licença MIT. Veja o arquivo LICENSE para mais detalhes.
Mateus Furrier - matfurrier@gmail.com
Link do Projeto: https://www.furrierlabs.com.br/clinicsaas
Se esse projeto te ajudou, deixe uma ⭐️!

