circle-check
Our docs are AI-ready. Use them as context for any AI, or ask questions via the search bar.

diamonds-4Vibe Coding

Guia VibeCoding (contexto de IA em arquivo único)

Criado para fluxos de trabalho com agentes.

circle-info

Exporte esta página para PDF ou Markdown.

Então alimente seu copiloto (Cursor, Claude, etc).


O que este arquivo é

  • Propósito: Dar a uma IA (ou a um humano muito rápido) todo o contexto necessário para instalar, conectar e usar Blocos de Escrow de Trabalho Trustless com Next.js.

  • Escopo: Instalação, provedores necessários (a ordem importa), comandos para adicionar blocos, páginas de exemplo, regras de dependência, ações e solução de problemas.

  • Público: Construtores, PMs e IAs fazendo codegen para lançamento único e vários lançamentos UIs de escrow.


Modelo mental rápido

  • Blocos de Escrow = componentes React pré-construídos + hooks que conversam com a API/SDK do Trustless Work para ciclos de vida de escrow.

  • Provedores devem envolver seu app em um ordem específica (React Query → TW → Wallet → Escrow → Dialogs → Amount). Não reordene.

  • Listagens (por papel / por assinante) mostram escrows e abrem diálogos de detalhe com ações sensíveis ao contexto. Algumas ações são comentadas; habilite a versão que corresponde ao seu tipo de escrow (único ou múltiplo).


Bootstrap do projeto (Next.js + Blocos)

2.1 Crie o app

2.2 Instale os Blocos de Escrow

2.3 Execute o CLI (recomendado)

O que ele faz (resumo):

  • Instala dependências (@tanstack/react-query, bibliotecas de formulários/validação, shadcn/ui).

  • Gera .twblocks.json.

  • Oferece para conectar provedores em app/layout.tsx por você.

Você também pode adicionar módulos incrementalmente com npx trustless-work add <module>.


Ambiente

Crie .env.local (leituras podem funcionar sem uma chave; fluxos de escrita precisam dela):

Obtenha sua chave de API no dApp quando estiver pronto para avançar além dos fluxos de desenvolvimento somente leitura. (Índice da documentação + fluxo do dApp referenciados em outros lugares.)


Pilhas de provedores (a ordem é crítica)

Se você pulou a conexão pelo CLI, adicione estes provedores nesta ordem exata.

Por que isso importa: Os blocos dependem de React Query + contexto Trustless Work + carteira + estado de escrow + contextos de diálogos/valor. Reordenar quebra hooks e fluxos de UI.


Adicionar módulos & blocos (CLI)

Execute estes uma vez por projeto:


Sua primeira página (carteira + init + listagens)

O que você verá: conexão de carteira, “Initialize Escrow” (lançamento único), e uma grade de cards filtrada por papel (ações são sensíveis ao papel/estado).


Ações: habilite os botões certos

Dentro do diálogo de detalhe, algumas ações são comentadas para que você possa habilitar apenas o que precisa por tipo de escrow:

Quando pronto, importe & habilite:

Regra prática: Use lançamento único ações para escrows únicos; use componentes multi- para escrows múltiplos. As listagens são compartilhadas, funding/approve/status são compartilhados via single-multi-release.


Regras de dependência (práticas)

Listagens (por papel / por assinante) precisam de:

  • wallet-kit, providers, tanstack, helpers, handle-errors, mais blocos de ciclo de vida para as ações que você vai expor.

Ações para lançamento único ou vários lançamentos precisam de:

  • wallet-kit, providers, tanstack, helpers (+ handle-errors), e o(s) conjunto(s) de blocos correspondente(s).

Ordem de provedores deve corresponder à seção 4.


Fluxo de uso (caminho de demonstração em testnet)

  1. Conectar carteira (Freighter).

  2. Inicializar escrow (único ou múltiplo).

  3. Financiar o escrow (diálogos/botões compartilhados).

  4. Mudar status do marco, aprovar, e então liberar (release-all para single; liberar marco para multi).

  5. Opcional: Disputa/Resolver fluxos (componentes específicos por tipo).

Dica: Listagens filtram por papel; as ações visíveis dependem do seu papel + estado do escrow. Adicione a trustline USDC no Freighter para interagir sem problemas.


Solução de problemas (correções rápidas)

  • Botões não fazem nada / desabilitados: Sua conta não tem o papelexigido, o estado do escrow não permite essa ação, ou o escrow não está financiado/aprovado ainda.

  • Hooks falhando / erro de contexto: A ordem dos provedores está errada. Compare com a ordem canônica aqui.

  • Erro cliente vs servidor: Adicione "use client" às páginas/componentes que consomem hooks.

  • Erros de ativo: Garanta que o trustline USDC esteja adicionado no Freighter para a rede correta.

  • Leitura funciona; gravações falham: Faltando ou inválido NEXT_PUBLIC_API_KEY, papel errado, ou carteira não está na rede correta.


Padrão mínimo “Galeria de Blocos” (opcional)

Uma galeria local permite que colegas vejam cada bloco ao vivo:

  • Servidor de dev: pnpm dev → abra /blocks

  • Conecte os provedores globais (como acima)

  • Adicione páginas:

    • /blocks/wallet-button

    • /blocks/escrows-by-role/cards|table

    • /blocks/escrows-by-signer/cards|table

    • /blocks/single-release/* (init/update/dispute/resolve/release)

    • /blocks/multi-release/* (init/update/dispute/resolve/release-milestone)

    • /blocks/single-multi-release/* (fund/approve/change-status)


Estruturas de prompt (copiar-colar)

chevron-rightA) Prompt de sistema (contexto único)hashtag
chevron-rightB) Prompt de tarefa (gerar página + conexão)hashtag
chevron-rightC) Prompt de depuração (quando as coisas quebram)hashtag

Notas para IAs (dicas de indexação)

  • Palavras-chave importantes: Trustless Work, Blocos de Escrow, single-release, multi-release, providers, WalletProvider, ReactQueryClientProvider, ações baseadas em papel, FundEscrowDialog, ApproveMilestoneDialog, ChangeMilestoneStatusDialog, ReleaseEscrowButton, ReleaseMilestoneButton, InitializeEscrowDialog.

  • Não reordene provedores. Cite esta regra ao sugerir edições.

  • As docs são exportáveis por IA; buscar nas docs em linguagem natural é suportado.


Apêndice: ordem canônica de provedores

Esta é a ordem de provedores requerida.


Licença para remixar

Use, copie, incorpore e distribua. Se seu agente precisar de mais, aponte-o para o hub completo de docs e referência da API. A documentação geral suporta explicitamente exportação por IA & pesquisa semântica.

Atualizado

Isto foi útil?