{
  "estilo": "saas-linear",
  "nome": "SaaS · produto em acao",
  "versao": 1,
  "fps": 30,
  "pecas": [
    {
      "nome": "Monitor",
      "categoria": "formas",
      "tipo": "componente",
      "arquivo": "formas/Monitor.tsx",
      "descricao": "Aparelho com borda fina e pé que segura as camadas dentro da tela 1500x940 (envolve as camadas de UI).",
      "params": [
        "semAparelho?",
        "borda?",
        "children"
      ],
      "duracao": null,
      "tags": [
        "moldura",
        "3d",
        "produto"
      ]
    },
    {
      "nome": "Agenda",
      "categoria": "formas",
      "tipo": "componente",
      "arquivo": "formas/Agenda.tsx",
      "descricao": "Painel de semana cujos blocos coloridos crescem um a um, com check opcional.",
      "params": [
        "titulo",
        "dias",
        "blocos",
        "inicio?",
        "intervalo?",
        "marcar?",
        "marcarEm?",
        "x?",
        "y?",
        "largura?",
        "altura?"
      ],
      "duracao": [
        30,
        90
      ],
      "tags": [
        "ui",
        "lista",
        "dados"
      ]
    },
    {
      "nome": "CaixaPrompt",
      "categoria": "formas",
      "tipo": "componente",
      "arquivo": "formas/CaixaPrompt.tsx",
      "descricao": "Caixa de pedido branca com texto digitado letra a letra, botao + e botao de enviar.",
      "params": [
        "placeholder",
        "digitar?",
        "digitarEm?",
        "atalhos?",
        "inicio?",
        "apertarMais?",
        "x?",
        "y?",
        "largura?"
      ],
      "duracao": [
        40,
        120
      ],
      "tags": [
        "ui",
        "texto",
        "ia"
      ]
    },
    {
      "nome": "CartoesIntegracao",
      "categoria": "formas",
      "tipo": "componente",
      "arquivo": "formas/CartoesIntegracao.tsx",
      "descricao": "Fileira de cartoes de conector que sobem em sequencia e ligam a chave (desconectado para conectado).",
      "params": [
        "cartoes",
        "inicio?",
        "intervalo?",
        "foco?",
        "x?",
        "y?",
        "largura?"
      ],
      "duracao": [
        36,
        90
      ],
      "tags": [
        "ui",
        "lista",
        "integracao"
      ]
    },
    {
      "nome": "Menu",
      "categoria": "formas",
      "tipo": "componente",
      "arquivo": "formas/Menu.tsx",
      "descricao": "Popover de menu com icones e faixa de selecao que desce pelos itens.",
      "params": [
        "itens",
        "inicio?",
        "passar?",
        "fechar?",
        "x?",
        "y?",
        "largura?"
      ],
      "duracao": [
        30,
        80
      ],
      "tags": [
        "ui",
        "lista",
        "interacao"
      ]
    },
    {
      "nome": "Cursor",
      "categoria": "formas",
      "tipo": "componente",
      "arquivo": "formas/Cursor.tsx",
      "descricao": "Mao/cursor que viaja entre pontos e clica soltando um anel; todo clique deve causar algo.",
      "params": [
        "pontos",
        "cliques?",
        "inicio?",
        "fim?",
        "mao?",
        "tamanho?"
      ],
      "duracao": [
        20,
        150
      ],
      "tags": [
        "interacao",
        "guia"
      ]
    },
    {
      "nome": "Fundo",
      "categoria": "texturas",
      "tipo": "componente",
      "arquivo": "texturas/Fundo.tsx",
      "descricao": "Parede quente com luz lateral que respira e mesa; com claro vira o creme da interface.",
      "params": [
        "claro?"
      ],
      "duracao": null,
      "tags": [
        "fundo",
        "luz"
      ]
    },
    {
      "nome": "Particulas",
      "categoria": "texturas",
      "tipo": "componente",
      "arquivo": "texturas/Particulas.tsx",
      "descricao": "Camada de pontos e tracos flutuando em 3 profundidades (movimento de fundo constante).",
      "params": [
        "quantidade?",
        "cor?",
        "semente?",
        "velocidade?",
        "opacidade?"
      ],
      "duracao": null,
      "tags": [
        "fundo",
        "movimento",
        "densidade"
      ]
    },
    {
      "nome": "Cena",
      "categoria": "transicoes",
      "tipo": "componente",
      "arquivo": "transicoes/Cena.tsx",
      "descricao": "Janela de tempo com entrada suave/subir/corte e saida com desfoque que cruza 10 quadros com a proxima.",
      "params": [
        "de",
        "ate",
        "entrada?",
        "ultima?",
        "children"
      ],
      "duracao": [
        24,
        150
      ],
      "tags": [
        "corte",
        "troca",
        "tempo"
      ]
    },
    {
      "nome": "CorteImpacto",
      "categoria": "transicoes",
      "tipo": "componente",
      "arquivo": "transicoes/CorteImpacto.tsx",
      "descricao": "Soco de corte: clarao, tremida e zoom-pop que decaem em ~10 quadros.",
      "params": [
        "em",
        "forca?",
        "clarao?",
        "children"
      ],
      "duracao": [
        10,
        14
      ],
      "tags": [
        "corte",
        "impacto",
        "energia"
      ]
    },
    {
      "nome": "FraseSerifa",
      "categoria": "tipografia",
      "tipo": "componente",
      "arquivo": "tipografia/FraseSerifa.tsx",
      "descricao": "Frase em serifa que nasce palavra a palavra (desfoque para nitido), *palavra* em acento.",
      "params": [
        "texto",
        "x?",
        "y?",
        "tamanho?",
        "largura?",
        "inicio?",
        "intervalo?",
        "sair?"
      ],
      "duracao": [
        30,
        90
      ],
      "tags": [
        "texto",
        "serifa"
      ]
    },
    {
      "nome": "Saudacao",
      "categoria": "tipografia",
      "tipo": "componente",
      "arquivo": "tipografia/Saudacao.tsx",
      "descricao": "Saudacao em serifa grande com a flor que abre antes das palavras.",
      "params": [
        "texto",
        "x?",
        "y?",
        "tamanho?",
        "inicio?",
        "intervalo?",
        "marca?",
        "marcaSrc?"
      ],
      "duracao": [
        40,
        100
      ],
      "tags": [
        "texto",
        "abertura"
      ]
    },
    {
      "nome": "Marca",
      "categoria": "tipografia",
      "tipo": "componente",
      "arquivo": "tipografia/Marca.tsx",
      "descricao": "Flor de quatro petalas que gira e abre em 16 quadros; aceita logo do cliente.",
      "params": [
        "tamanho?",
        "cor?",
        "inicio?",
        "src?",
        "girar?"
      ],
      "duracao": [
        16,
        60
      ],
      "tags": [
        "logo",
        "sinal"
      ]
    },
    {
      "nome": "MarcaFinal",
      "categoria": "tipografia",
      "tipo": "componente",
      "arquivo": "tipografia/MarcaFinal.tsx",
      "descricao": "Fecho: flor + nome revelado por mascara, com linha de apoio.",
      "params": [
        "nome",
        "apoio?",
        "x?",
        "y?",
        "tamanho?",
        "inicio?",
        "marcaSrc?"
      ],
      "duracao": [
        36,
        90
      ],
      "tags": [
        "logo",
        "fecho"
      ]
    },
    {
      "nome": "Camera",
      "categoria": "camera",
      "tipo": "componente",
      "arquivo": "camera/Camera.tsx",
      "descricao": "Camera 3D com perspectiva: chaves {em,z,x,y} levam do plano aberto (z0) ao fechado (z1) e alem; deriva constante.",
      "params": [
        "chaves?",
        "children"
      ],
      "duracao": null,
      "tags": [
        "3d",
        "camera",
        "movimento"
      ]
    },
    {
      "nome": "CameraDeriva",
      "categoria": "camera",
      "tipo": "componente",
      "arquivo": "camera/CameraDeriva.tsx",
      "descricao": "Câmera 3D com perspectiva: chaves {em,z,x,y,giro} levam o foco de uma a outra e por baixo roda uma deriva que nunca para.",
      "params": [
        "chaves?",
        "deriva?",
        "perspectiva?",
        "children"
      ],
      "duracao": null,
      "tags": [
        "3d",
        "camera",
        "movimento"
      ]
    },
    {
      "nome": "whoosh-entra",
      "categoria": "sons",
      "tipo": "audio",
      "arquivo": "sons/whoosh-entra.mp3",
      "descricao": "Passagem de ar que entra (camera aproximando, cena nascendo).",
      "params": [
        "em",
        "volume?"
      ],
      "duracao": [
        30,
        30
      ],
      "volumeSugerido": 0.9,
      "tags": [
        "sfx",
        "entrada"
      ]
    },
    {
      "nome": "whoosh-sai",
      "categoria": "sons",
      "tipo": "audio",
      "arquivo": "sons/whoosh-sai.mp3",
      "descricao": "Passagem de ar que sai (troca de tela).",
      "params": [
        "em",
        "volume?"
      ],
      "duracao": [
        30,
        30
      ],
      "volumeSugerido": 0.8,
      "tags": [
        "sfx",
        "saida"
      ]
    },
    {
      "nome": "swoosh",
      "categoria": "sons",
      "tipo": "audio",
      "arquivo": "sons/swoosh.mp3",
      "descricao": "Varrida curta para menu abrindo ou painel entrando.",
      "params": [
        "em",
        "volume?"
      ],
      "duracao": [
        30,
        30
      ],
      "volumeSugerido": 1,
      "tags": [
        "sfx",
        "entrada"
      ]
    },
    {
      "nome": "pop-palavra",
      "categoria": "sons",
      "tipo": "audio",
      "arquivo": "sons/pop-palavra.mp3",
      "descricao": "Estalo leve para palavra ou frase comecando, check.",
      "params": [
        "em",
        "volume?"
      ],
      "duracao": [
        18,
        18
      ],
      "volumeSugerido": 1,
      "tags": [
        "sfx",
        "texto"
      ]
    },
    {
      "nome": "pop-cartao",
      "categoria": "sons",
      "tipo": "audio",
      "arquivo": "sons/pop-cartao.mp3",
      "descricao": "Estalo de cartao, chave ligando, bloco enchendo.",
      "params": [
        "em",
        "volume?"
      ],
      "duracao": [
        21,
        21
      ],
      "volumeSugerido": 0.9,
      "tags": [
        "sfx",
        "ui"
      ]
    },
    {
      "nome": "clique",
      "categoria": "sons",
      "tipo": "audio",
      "arquivo": "sons/clique.mp3",
      "descricao": "Clique seco de botao, 1 quadro antes do aperto do cursor.",
      "params": [
        "em",
        "volume?"
      ],
      "duracao": [
        15,
        15
      ],
      "volumeSugerido": 0.8,
      "tags": [
        "sfx",
        "interacao"
      ]
    },
    {
      "nome": "impacto",
      "categoria": "sons",
      "tipo": "audio",
      "arquivo": "sons/impacto.mp3",
      "descricao": "Batida grave de climax; casar com CorteImpacto.",
      "params": [
        "em",
        "volume?"
      ],
      "duracao": [
        42,
        42
      ],
      "volumeSugerido": 0.85,
      "tags": [
        "sfx",
        "impacto"
      ]
    },
    {
      "nome": "subida",
      "categoria": "sons",
      "tipo": "audio",
      "arquivo": "sons/subida.mp3",
      "descricao": "Riser que cresce ate o fecho.",
      "params": [
        "em",
        "volume?"
      ],
      "duracao": [
        45,
        45
      ],
      "volumeSugerido": 0.7,
      "tags": [
        "sfx",
        "tensao"
      ]
    },
    {
      "nome": "assinatura",
      "categoria": "sons",
      "tipo": "audio",
      "arquivo": "sons/assinatura.mp3",
      "descricao": "Sting de logo para o nome da marca revelando.",
      "params": [
        "em",
        "volume?"
      ],
      "duracao": [
        66,
        66
      ],
      "volumeSugerido": 0.9,
      "tags": [
        "sfx",
        "marca"
      ]
    },
    {
      "nome": "Som",
      "categoria": "sons",
      "tipo": "componente",
      "arquivo": "sons/Som.tsx",
      "descricao": "Componentes Efeito (um som no quadro em) e Trilha (musica com fade de saida) que tocam os audios acima.",
      "params": [
        "som",
        "em",
        "volume?"
      ],
      "duracao": null,
      "tags": [
        "audio",
        "codigo"
      ]
    },
    {
      "nome": "trilha",
      "categoria": "trilha",
      "tipo": "audio",
      "arquivo": "trilha/trilha.mp3",
      "descricao": "Trilha de 9 s a 100 bpm (1 batida = 18 quadros), quente; repetir em laco para videos longos.",
      "params": [
        "volume?",
        "saida?"
      ],
      "duracao": [
        270,
        270
      ],
      "bpm": 100,
      "tags": [
        "trilha",
        "musica"
      ]
    },
    {
      "nome": "paleta",
      "categoria": "paleta",
      "tipo": "dados",
      "arquivo": "cores/paleta.json",
      "descricao": "Cores, sombras, area segura, curvas e medidas do estilo (cores/paleta.png é a amostra visual).",
      "params": [],
      "duracao": null,
      "tags": [
        "cor"
      ]
    }
  ]
}
