Sobre o projeto
Strasbeat é um ambiente de live‑coding baseado em navegador construído sobre o Strudel (TidalCycles portado para JavaScript). Ele envolve o Strudel em um editor de qualidade IDE completo, fazendo com que a criação, edição e versionamento de padrões pareçam desenvolvimento no VSCode. O editor principal inclui o CodeMirror 6 com autocompletar para sons, acordes, escalas, funções do Strudel e tokens de mini‑notação; documentação de hover proveniente do JSDoc; dicas de assinatura; formatação Prettier (com restauração de aspas para o transpilador do Strudel); e um scrubber numérico no estilo Figma para ajuste em tempo real de literais numéricos. Um piano roll customizado em Canvas2D renderiza cor por camada, linhas de grade de batida/ciclo e rótulos da linha ativa. A ponte de hardware MIDI suporta reprodução ao vivo através do superdough com sons pré‑definidos e um fluxo de captura‑para‑arquivo que grava as frases tocadas como padrões reais do Strudel. Um exportador offline de WAV em 48 kHz 16‑bit estéreo contorna um problema no grafo de áudio upstream. Os padrões são arquivos JavaScript simples armazenados em disco, editáveis no navegador ou em uma IDE externa, e mantidos sincronizados via HMR do Vite. Um helper `progression()` (e outras extensões de tempo de execução) é injetado no escopo de eval, permitindo progressões de acordes em uma linha com dicionários de voicing, presets de ritmo, entrada em algarismos romanos e camadas de baixo opcionais. A UI inclui uma biblioteca de padrões com busca, controles de transporte, um modal dentro do app e uma gaveta de configurações com cor de destaque persistente. Helpers de console integrados auxiliam na descoberta de sons e na sondagem de renderização offline. O projeto está licenciado sob a AGPL‑3.0, herdando a mesma licença do Strudel.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.