DevFlow Labs
Sistema de produção assistida: engine musical + interface visual + export para DAW.
FunkLab Studio — DAW companion tool focado em funk brasileiro, phonk e tech house.
Diferencial: não existe produto equivalente focado em groove generation para esses estilos.
┌─────────────────────────────────────────────────────────────┐
│ FunkLab Studio │
├─────────────────────────────────────────────────────────────┤
│ UI (Next.js + Tailwind + ShadCN) │
│ ou Desktop App (Tauri) │
├─────────────────────────────────────────────────────────────┤
│ API (FastAPI) │
│ REST endpoints → engine │
├─────────────────────────────────────────────────────────────┤
│ Engine (Python) │
│ groove_analyzer │ bass_generator │ template_builder │ │
│ groove_mutator │ exploration_engine │ musicality │
├─────────────────────────────────────────────────────────────┤
│ Data: library/ │ projects/ │ samples/ │
└─────────────────────────────────────────────────────────────┘
funklab/
├── engine/ # Core musical (atual core/)
│ ├── groove_analyzer.py
│ ├── bass_generator.py
│ ├── template_builder.py
│ ├── groove_mutator.py # Fase 2
│ ├── exploration_engine.py # Fase 4
│ └── musicality.py
│
├── api/ # Camada REST
│ ├── server.py
│ ├── routes_generate.py
│ ├── routes_analyze.py
│ └── routes_library.py
│
├── ui/ # Frontend
│ └── nextjs_app/
│
├── library/
├── projects/
├── samples/
└── cli/ # CLI como API interna (mantido)
http://localhost:8000/api/v1
| Método | Endpoint | Descrição |
|---|---|---|
| POST | /generate/session |
Gera sessão com N sketches |
| POST | /generate/batch |
Gera batch de projetos |
| POST | /generate/bassline |
Gera bassline isolada |
| POST | /generate/single |
Gera 1 projeto |
| POST | /analyze/audio |
Analisa áudio (upload) |
| GET | /library/grooves |
Lista grooves |
| GET | /library/bass-patterns |
Lista bass patterns |
| GET | /library/presets |
Lista presets |
| POST | /library/groove |
Adiciona groove |
| GET | /projects |
Lista projetos/sessions |
| GET | /projects/{id}/files |
Retorna MIDI/JSON do projeto |
POST /generate/session
{
"style": "mandelao",
"bpm": 130,
"count": 8
}Response: { "session_id": "...", "projects": [...] }
POST /analyze/audio
- multipart/form-data:
file(wav/mp3) - Response:
{ "bpm", "swing", "pattern", "hits", "suggested_name" }
| Componente | Tipo | Descrição |
|---|---|---|
| Preset | Select | mandelao, funk130, phonk, funk-techhouse |
| BPM | Number | override opcional |
| Count | Number | 1–20 sketches |
| Generate | Button | dispara geração |
Fluxo: Selecionar estilo → Gerar 8 sketches → Ouvir → Favoritar → Exportar MIDI
Visualização em 16 steps:
- Kick — linha 1
- Clap — linha 2
- Hat — linha 3
- Ghost — linha 4
Grid editável (X = hit, x = ghost, - = rest).
| Opção | Tipo |
|---|---|
| Key | Select (C, C#, D, ...) |
| Scale | minor, major, pentatonic, blues |
| Pattern | Select da library |
| Velocity variation | off / light / medium |
| Slide intensity | off / light / medium |
| Ghost notes | Toggle |
Preview MIDI (Tone.js ou player).
| Campo | Descrição |
|---|---|
| Style | preset |
| Energy | slider |
| Groove diversity | slider |
| Bass diversity | slider |
| Count | 10–20 |
Output: cards de ideias com play e favoritar.
Tabs:
- Grooves
- Bass patterns
- Presets
- Samples
CRUD + tags + filtros.
| Tecnologia | Uso |
|---|---|
| Next.js 15 | App Router |
| Tailwind v4 | Estilos |
| ShadCN | Componentes |
| Zustand | Estado |
| Tone.js | Audio/MIDI preview |
| WebAudio API | Fallback |
| Tecnologia | Uso |
|---|---|
| Python 3.10+ | Engine |
| FastAPI | API REST |
| Uvicorn | Servidor ASGI |
Opção recomendada: Desktop (Tauri)
- Tauri + Next.js + Python (subprocess ou sidecar)
- Resultado:
FunkLab.app - Acesso local a arquivos e MIDI
Alternativa: Web
- Next.js + API remota
- Limitações: upload de áudio, download de MIDI
DevFlow Labs – FunkLab Studio
- Tagline: AI-assisted beat creation
- Domínio:
funklab.devflowlabs.com - CLI continua como ferramenta power-user
| Fase | Escopo | Status |
|---|---|---|
| 1 | Engine estabilizada (groove, bass, arranjo) | Pronto |
| 2 | API layer (FastAPI) | Pronto |
| 3 | UI Next.js (telas base) | Pendente |
| 4 | Exploration engine | Pendente |
| 5 | Audio preview (Tone.js) | Pendente |
| 6 | Desktop app (Tauri) | Pendente |
| 7 | Funcionalidades premium | Futuro |
| Plano | Limite | Preço |
|---|---|---|
| Free | 5 sketches/dia | $0 |
| Pro | Ilimitado | $9/mês |
Features premium possíveis:
- AI groove extraction
- AI bass generator
- Style cloning
- Reference track analysis
- CLI → continua como API interna; chamada pela UI ou uso direto
- UI → chama API REST → engine
- Desktop → bundla engine + API + UI localmente