VibeCForms is an AI-first framework for building process tracking systems with seamless human/AI/code collaboration. Built on Python and Flask, it enables rapid development of systems that track multi-step processes (sales pipelines, laboratory workflows, legal case management) through well-defined conventions rather than extensive coding.
Modern business systems need to track processes with multiple steps and states. VibeCForms provides a framework where:
- AI/Human/Code as Equal Actors - All actors monitor states (tags), act on objects, and trigger transitions through the same uniform interface
- Simple Yet Powerful - Build complex process tracking systems using configurations and conventions, not thousands of lines of code
- Convention over Configuration, Configuration over Code - Sensible defaults reduce setup, JSON configuration handles customization, code only for unique logic
VibeCForms provides well-defined conventions that builders can rely on:
- 1:1 CRUD-to-Table Mapping - Every form maps directly to one table/storage, no hidden abstractions
- Shared Metadata - UI and database definitions come from the same source, always in sync
- Relationship Tables for All Cardinality - All relationships use relationship tables, regardless of 1:1, 1:N, or N:N
- Tags as State - Object states are represented by tags, making state transitions explicit and trackable
- Kanbans for State Transitions - Visual boards control how objects move between states
- Uniform Actor Interface - Humans, AI agents, and subsystems use the same interface to monitor tags and trigger actions
- Tag-Based Notifications - Simple notification system where any actor can monitor tag changes
- Convention over Configuration, Configuration over Code - Use conventions first, configure when needed, code only for unique logic
VibeCForms excels at systems that need process tracking with multiple actors:
- States (Tags): Lead → Qualified → Proposal → Negotiation → Closed
- Actors:
- Sales reps move deals between stages (Kanban)
- AI agent analyzes lead quality and suggests next actions
- Email subsystem monitors "Proposal" tag and sends follow-ups
- Notification system alerts manager when deals reach "Negotiation"
- States (Tags): Requested → Sample Collected → In Analysis → Results Ready → Delivered
- Actors:
- Lab technicians update sample status (Kanban)
- AI reviews results and flags anomalies requiring human review
- Equipment subsystems auto-update when analysis completes
- Patient portal monitors "Results Ready" tag for notifications
- States (Tags): Filed → Discovery → Motions → Trial → Judgment → Closed
- Actors:
- Attorneys move cases through stages (Kanban)
- AI assistant monitors deadlines and suggests document templates
- Court system integration updates filing status
- Billing system monitors state changes for time tracking
VibeCForms implements a clear hierarchy:
Start building immediately with sensible defaults:
- Create a JSON spec file → instant CRUD form
- Forms auto-map to storage (1:1 mapping)
- Metadata automatically shared between UI and database
- All 20 HTML5 field types supported out of the box
Customize through JSON files, no code required:
- Form specifications define fields, validation, icons
- Folder configurations organize forms hierarchically
- Backend selection (TXT, SQLite, MySQL, PostgreSQL, MongoDB, CSV, JSON, XML)
- Tag definitions and Kanban board layouts
Write code only when conventions and configuration aren't enough:
- Custom business rules
- External system integrations
- AI agent behaviors
- Complex validations
Clone and run:
git clone https://github.com/rmsantista/VibeCForms.git
cd VibeCForms
uv sync
uv run pre-commit install
uv run hatch run devAccess at http://localhost:5000
- Create
src/specs/customers.json:
{
"title": "Customers",
"icon": "fa-users",
"fields": [
{"name": "name", "label": "Name", "type": "text", "required": true},
{"name": "email", "label": "Email", "type": "email", "required": true},
{"name": "status", "label": "Status", "type": "select", "options": [
{"value": "lead", "label": "Lead"},
{"value": "active", "label": "Active"},
{"value": "inactive", "label": "Inactive"}
]}
]
}-
Access
http://localhost:5000/customers- Your form is ready with full CRUD! -
No database setup, no migrations, no boilerplate - just works.
See docs/Manual.md for complete configuration reference.
- Python with Flask (web framework)
- SQLite (default), plus support for MySQL, PostgreSQL, MongoDB, TXT, CSV, JSON, XML
- pytest (41 tests passing)
- Jinja2 templates
- Vibe Coding - Built with AI assistance (ChatGPT, GitHub Copilot)
- docs/Manual.md - Complete configuration reference (470+ lines)
- docs/prompts.md - All AI prompts and interactions (Portuguese)
- docs/learning_notes.md - Learning journey reflections
- docs/roadmap.md - Future evolution plans
- docs/dynamic_forms.md - Dynamic forms guide
- CLAUDE.md - AI assistant guidance for building with VibeCForms
uv run hatch run test # Run 41 tests
uv run hatch run format # Format code
uv run hatch run lint # Check formatting
uv run hatch run check # Pre-commit hooksContributions welcome! You can:
- Suggest improvements
- Fix issues
- Improve documentation
- Add new features following the conventions
This is my first open-source project, built entirely with free tools and AI assistance. It started as a learning journey into "Vibe Coding" and evolved into a framework for building process tracking systems. The goal is to show how AI can help anyone build working software, and to provide a foundation that others can build upon.
VibeCForms é um framework AI-first para construir sistemas de rastreamento de processos com colaboração fluida entre humanos, IA e código.
- Convenção sobre Configuração, Configuração sobre Código - Padrões sensatos primeiro, configuração quando necessário, código apenas para lógica única
- Mapeamento 1:1 CRUD-Tabela - Cada formulário mapeia diretamente para uma tabela
- Metadados Compartilhados - UI e banco de dados sempre sincronizados
- Tabelas de Relacionamento - Todos os relacionamentos usam tabelas intermediárias
- Tags como Estado - Estados representados por tags rastreáveis
- Kanbans para Transições - Quadros visuais controlam mudanças de estado
- Interface Uniforme - Humanos, IA e código usam a mesma interface
- Notificações Baseadas em Tags - Sistema simples de monitoramento de mudanças
- Pipeline de Vendas: Lead → Qualificado → Proposta → Negociação → Fechado
- Exames Laboratoriais: Solicitado → Coletado → Em Análise → Resultados → Entregue
- Gestão de Casos Legais: Protocolado → Investigação → Petições → Julgamento → Encerrado
- ✅ 41 testes unitários (todos passando)
- ✅ Sistema de persistência plugável (8 backends: TXT, SQLite, MySQL, PostgreSQL, MongoDB, CSV, JSON, XML)
- ✅ 20 tipos de campos HTML5 suportados
- ✅ Migração automática entre backends
- ✅ Detecção de mudanças em schemas
- ✅ Sistema de templates Jinja2
- ✅ Navegação hierárquica com ícones customizáveis
- ✅ Documentação completa (470+ linhas)
git clone https://github.com/<seu-usuario>/VibeCForms.git
cd VibeCForms
uv sync
uv run hatch run devAcesse http://localhost:5000 e crie seu primeiro formulário em JSON!
📌 Toda a documentação de prompts está em português para preservar a originalidade. 📌 Projeto criado totalmente com ferramentas gratuitas e assistência de IA. 📌 Evolução de CRUD simples para framework completo de rastreamento de processos. 📌 Guia prático para aprender Vibe Coding - programação com IA.