WARNING: THIS SITE IS A MIRROR OF GITHUB.COM / IT CANNOT LOGIN OR REGISTER ACCOUNTS / THE CONTENTS ARE PROVIDED AS-IS / THIS SITE ASSUMES NO RESPONSIBILITY FOR ANY DISPLAYED CONTENT OR LINKS / IF YOU FOUND SOMETHING MAY NOT GOOD FOR EVERYONE, CONTACT ADMIN AT ilovescratch@foxmail.com
Skip to content

O SDD-Vibe-Converter é um assistente de IA que estrutura o desenvolvimento de software através de conversas guiadas. Ele converte ideias não estruturadas em especificações técnicas completas, seguindo a metodologia Specification-Driven Development (SDD).

Notifications You must be signed in to change notification settings

TrolljanO/sdd_vibe_converter

Repository files navigation

SDD-Buddy (SDD-Vibe-Converter)

SDD-Buddy Logo

Transforme suas ideias em especificações executáveis de software.

Python FastAPI React License Tests PRs Welcome

✨ Demo🚀 Início Rápido📖 Documentação🤝 Contribuir


📹 Demo

SDD-Buddy Demo

Chat conversacional inteligente que guia você através das 5 fases do SDD


🎯 O que é o SDD-Buddy?

O SDD-Buddy é um assistente de IA que estrutura o desenvolvimento de software através de conversas guiadas. Ele converte ideias não estruturadas em especificações técnicas completas, seguindo a metodologia Specification-Driven Development (SDD).

✨ Arquitetura (v0.2.0)

  • State Machine: Gerenciamento robusto de fases com transições validadas
  • Workflows Estruturados: Perguntas estratégicas organizadas por fase
  • LLM com Fallback: Sistema inteligente com múltiplos modelos de backup
  • Chat Funcional: Interface conversacional totalmente operacional
  • Aprovação de Artefatos: Revisão e aprovação antes da geração
  • Persistência: Estado salvo em SQLite
  • Métricas em Tempo Real: Rastreamento de performance do LLM

📋 Fases do Processo

  1. Constitution → Define princípios fundamentais do projeto
  2. Specification → Detalha funcionalidades e requisitos
  3. Planning → Estabelece arquitetura e stack tecnológica
  4. Tasks → Decomõe em tarefas executáveis
  5. QA → Revisa e refina todos os artefatos

Cada fase gera um artefato markdown que serve como documentação viva do projeto.


📸 Screenshots

Interface de Chat

Chat Interface

Conversa em Andamento

Chat Conversation


🚀 Início Rápido

Backend

# Clone o repositório
git clone https://github.com/seu-repo/sdd_vibe_converter.git
cd sdd_vibe_converter

# Configure o ambiente
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt

# Configure as variáveis de ambiente
cp .env.example .env
# Edite .env com sua OPENAI_API_KEY do OpenRouter

# Inicie o servidor
uvicorn app.main:app --reload

Acesse a documentação da API em http://localhost:8000/docs

Frontend

# Instale dependências
cd frontend
npm install

# Execute o servidor de desenvolvimento
npm run dev

Acesse a interface em http://localhost:5173


💡 Como Usar

  1. Abra a interface web em http://localhost:5173
  2. Clique na aba "Chat" para iniciar
  3. Responda as perguntas do assistente sobre seu projeto
  4. Aprove os artefatos conforme são gerados
  5. Revise e ajuste até estar satisfeito

O sistema guia você através de todas as fases automaticamente!


🏗️ Arquitetura

sdd_vibe_converter/
├── app/
│   ├── core/              # State Machine para gerenciamento de fases
│   ├── workflows/         # Definições de workflows estruturados
│   ├── agents/            # Agentes conversacionais por fase
│   ├── services/          # LLM, persistência, aprovação
│   ├── config/            # Perguntas estratégicas
│   ├── templates/         # Templates dos artefatos
│   └── main.py            # Aplicação FastAPI
├── frontend/              # Interface React
│   └── src/
│       └── components/    # Componentes de UI
├── tests/                 # Testes unitários (20/20 passing)
└── examples/              # Exemplos de integração

🧪 Testes

# Execute todos os testes
pytest tests/ -v

# Testes específicos
pytest tests/test_phase_machine.py -v
pytest tests/test_workflows.py -v

Cobertura: 20/20 testes passando (100%)


🔧 Configuração Avançada

Múltiplos Modelos LLM (Fallback)

Edite .env para configurar modelos de fallback:

# Modelo principal
LLM_MODEL_PRIMARY=anthropic/claude-3.5-sonnet

# Fallback 1
LLM_MODEL_SECONDARY=openai/gpt-4o-mini

# Fallback 2
LLM_MODEL_TERTIARY=google/gemini-pro-1.5

Se o modelo principal falhar, o sistema automaticamente tenta os backups.

Métricas do LLM

Acesse métricas em tempo real:

from app.services.llm_service_v2 import enhanced_llm_service

# Ver estatísticas
metrics = enhanced_llm_service.get_metrics_summary()
# {
#   "total_requests": 150,
#   "success_rate_percent": 98.5,
#   "avg_latency_ms": 450,
#   ...
# }

📚 Documentação


🤝 Contribuindo

Contribuições são bem-vindas! Por favor:

  1. Fork o projeto
  2. Crie uma branch para sua feature (git checkout -b feat/nova-funcionalidade)
  3. Commit suas mudanças (git commit -m 'feat: adiciona nova funcionalidade')
  4. Push para a branch (git push origin feat/nova-funcionalidade)
  5. Abra um Pull Request

Convenções de Commit

  • feat: nova funcionalidade
  • fix: correção de bug
  • refactor: refatoração de código
  • docs: documentação
  • test: testes
  • style: formatação

📜 Licença

Este projeto está sob a licença MIT.


🎉 Changelog

v0.2.0-alpha (2025-11-24)

Novidades:

  • ✨ State Machine para gerenciamento de fases
  • ✨ Sistema de Workflows estruturados
  • ✨ LLM Service com fallback automático
  • ✨ Chat conversacional funcional
  • ✨ Sistema de aprovação de artefatos

Melhorias:

  • ♻️ Código refatorado e limpo
  • ✅ 20 testes unitários (100% passing)
  • 📝 Documentação completa
  • 🎨 Interface moderna com DaisyUI

Correções:

  • 🐛 Chat agora funciona corretamente
  • 🐛 Endpoints corrigidos
  • 🐛 Gerenciamento de estado aprimorado

Desenvolvido com ❤️ usando FastAPI, React e IA

About

O SDD-Vibe-Converter é um assistente de IA que estrutura o desenvolvimento de software através de conversas guiadas. Ele converte ideias não estruturadas em especificações técnicas completas, seguindo a metodologia Specification-Driven Development (SDD).

Topics

Resources

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published