Pular para o conteúdo
supastack
Explorar a documentação
WebNext.js

For AI agents: fetch the complete documentation index at /llms.txt, the full documentation corpus at /llms-full.txt, the agent skill at /skill.md, or this page as Markdown at /pt/docs/desktop/run.md (or send Accept: text/markdown).

Execute e configure o shell

Inicie o shell de desenvolvimento Tauri e conecte-o ao seu app web.

Passo a passo para iniciantes

Pré-requisitos: Leia os dois guias para iniciantes abaixo e conclua a configuração local do Desktop, incluindo Rust e pré-requisitos do sistema operacional. O bloco de código inicia o aplicativo da web e Tauri no monorepo; em uma finalização de compra somente para desktop, use seu comando filtrado somente após iniciar um back-end da web acessível separadamente. Tauri carrega esse backend.

Termos rápidos: um espaço de trabalho consiste em usuários, dados e configurações separados de uma equipe. O servidor é o back-end confiável; mantenha as chaves do provedor fora do navegador e do código do telefone. Uma migração é uma alteração de versão do banco de dados que cria ou atualiza tabelas. Um modelo de IA é o mecanismo que responde; o catálogo de modelos é a lista do servidor de IDs e preços de modelos disponíveis. Um provedor é um serviço externo, como IA, e-mail ou serviço de cobrança. Um direito é uma concessão que permite que um espaço de trabalho use um recurso. Um webhook é uma mensagem que um serviço envia para o URL de outro serviço.

1. Abra apps/desktop/src-tauri/src/lib.rs; peça ao seu agente para alterar apenas o comportamento nomeado da janela/bandeja/tecla de atalho e manter a IU do produto no aplicativo da web.

2. Execute o shell e teste próximo à bandeja, Sair e CmdOrCtrl+Shift+Space; teste supastack:///settings/appearance?preview=1#main.

3. Deve focar a janela existente e preservar o caminho/consulta/fragmento. Se abrir a página errada, compare a origem configurada e a rota exata.

Para código personalizado, comece com o prompts/README.md fornecido e copie o prompt mais próximo: prompts/new-app-screen.md para uma tela de aplicativo ou prompts/new-landing-page.md para uma página pública. Para trabalho de servidor, banco de dados ou provedor, dê ao seu agente de codificação a tarefa deste guia e peça-lhe para ler AGENTS.md, .ai/PROJECT_CONTEXT.md e espelhos .ai/ correspondentes; inspecione os arquivos de origem exatos nomeados aqui; listar arquivos e verificações antes de editar; preservar a propriedade do espaço de trabalho e os segredos apenas do servidor; e mostrar a diferença. Informe o comportamento desejado, campos de entrada e saída, funções permitidas, sucessos e erros esperados e a conta de teste, provedor ou dispositivo. Use valores de amostra; nunca cole um segredo real.

# Monorepo: start the web app and desktop shell together
corepack pnpm dev:desktop

# Desktop-only checkout: start Tauri after a web backend is already reachable
corepack pnpm --filter @supastack/desktop dev

Mantenha o comportamento do shell em Rust

src-tauri/src/lib.rs cria a janela principal de visualização da web de 1200×800. Fechar esconde-o na bandeja; Saia das saídas. Os menus nativos fornecem Início/Voltar/Avançar/Recarregar, zoom/tela cheia e ações de janela. A restauração do estado da janela preserva o tamanho/posição.

Verifique o comportamento específico da plataforma

A sobreposição offline injetada oferece Repetir, oculta-se online e recarrega o aplicativo da web. Teste o foco, os atalhos, o zoom do menu, a bandeja e a invocação de links diretos em todos os sistemas operacionais de destino; As verificações da unidade URL por si só não comprovam essas interações nativas.

Instalação e configuração

Instale as dependências do espaço de trabalho e o conjunto de ferramentas Rust, além dos pré-requisitos por sistema operacional do Tauri (WebView2 é fornecido com o Windows; macOS e Linux precisam de seus pacotes documentados). corepack pnpm --filter @supastack/desktop dev executa tauri dev: ele constrói o núcleo Rust, mostra a interface do usuário do espaço reservado e carrega o aplicativo resolvido URL.

SUPASTACK_APP_URL é lida primeiro em tempo de execução e depois usa o valor incluído no build. Somente URLs HTTP(S) sem credenciais são aceitas; caso contrário, tenta-se o próximo valor. SUPASTACK_DESKTOP_HOTKEY substitui o atalho padrão CmdOrCtrl+Shift+Space. Um valor inválido volta ao atalho padrão em vez de impedir a inicialização.

corepack pnpm --filter @supastack/desktop dev
corepack pnpm --filter @supastack/desktop typecheck

SUPASTACK_APP_URL=https://app.example.com \
SUPASTACK_DESKTOP_HOTKEY=CmdOrCtrl+Shift+Space \
corepack pnpm --filter @supastack/desktop dev

Fluxo de implementação

A janela principal permanece na origem exata configurada, incluindo protocolo e porta. Links HTTP(S) sem credenciais, mailto e tel podem abrir no navegador do sistema; protocolos não permitidos são cancelados.

Links supastack:// registrados mapeiam caminho, consulta e fragmento para a origem configurada do app. A inicialização, eventos de abertura de URL da plataforma e callbacks de segunda instância usam a mesma validação, impedindo que um link profundo redirecione o shell para outro host.

O ícone da bandeja e o atalho global mostram e focam a única janela principal. Se o atalho não for registrado, outro app provavelmente está usando a combinação; escolha outro SUPASTACK_DESKTOP_HOTKEY.

Verificação e resolução de problemas

Depois de alterar src-tauri, execute cargo check e cargo test pelos scripts do pacote. Em seguida, verifique a navegação para a origem exata, a abertura de links externos permitidos, uma rota supastack:// na origem configurada do app, bandeja e atalho, e a persistência do login após reiniciar.

Perguntas frequentes

14 perguntas

O que é o supastack?

O supastack é uma base modular para construir produtos SaaS com IA. Reúne a infraestrutura comum para que possas concentrar-te nas funcionalidades próprias do teu produto.

Suporta web e mobile?

Sim. O supastack inclui apps Next.js e Expo como pontos de partida para experiências web e mobile.

Que autenticação está incluída?

O Better Auth cobre email/palavra-passe, OTP e login social. Os workspaces pessoais são aprovisionados com a conta para que os registos fiquem delimitados desde o primeiro dia.

Como é suportada a IA?

O supastack inclui IA multi-fornecedor configurável, registo de utilização, orçamentos e suporte encriptado de chaves próprias (BYOK).

Como são geridas as subscrições?

Para produtos construídos sobre o kit, a faturação Stripe, as subscrições e as permissões formam a base do acesso pago. Os segredos de fornecedor ficam no servidor.

Onde vive o código próprio do meu produto?

As funcionalidades próprias do produto ficam num codebase separado, enquanto o produto configura e integra os módulos base do supastack.

Como funciona o preço do supastack?

O kit é uma compra única com atualizações vitalícias: Uma framework por 249 $ (preço de lançamento temporário — 100 $ de desconto sobre o preço normal de 349 $) ou Todas as frameworks (Next.js, iOS, Android) por 499 $ (preço de lançamento temporário — 100 $ de desconto sobre o preço normal de 599 $), mais 75 $ por lugar de programador adicional. Sem subscrição do kit. O checkout neste site entrega a tua chave de licença por email, com acesso ao repo por convite GitHub.

Como é que os workspaces delimitam os meus dados?

Os registos do utilizador são delimitados por workspaceId. Identidade, permissões, utilização de IA, eventos de faturação e entradas de auditoria ficam dentro do limite do workspace pessoal.

Como funcionam os jobs em segundo plano?

O Trigger.dev é o runtime de jobs explícito. O contrato JobRunner só promete enqueue, status e cancel — a semântica de workflow permanece específica e explícita do Trigger.dev.

Como difere o email da divulgação?

O email transacional cobre fluxos de produto como avisos de conclusão de tarefas. A divulgação fria e as campanhas pertencem ao próprio produto, fora do módulo de email deste kit.

Como funcionam as compras no aplicativo móvel?

O aplicativo móvel inclui compras nativas e restauração via RevenueCat, com acesso verificado pelo servidor. Configure as contas das lojas e conclua os testes em dispositivos antes de publicar. A cobrança web permanece separada.

Onde residem as chaves dos fornecedores de IA?

As credenciais BYOK são encriptadas e ficam no servidor. As chaves são higienizadas nos logs; a utilização e os orçamentos ficam visíveis ao nível do workspace.

Quais métodos de pagamento o checkout aceita?

O checkout hospedado na Stripe aceita cartões e também pode oferecer Alipay e WeChat Pay quando essas carteiras estiverem ativadas na conta Stripe — útil para compradores na China. As autorizações de carteira são confirmadas de forma assíncrona, então a página da licença é atualizada assim que o pagamento é liquidado.

Posso solicitar um reembolso?

Depois de obter acesso ao repositório, o supastack é seu para sempre, portanto não pode ser reembolsado. Mas fique tranquilo: você recebe o código-fonte completo com atualizações vitalícias para criar e lançar produtos ilimitados para você ou seus clientes. Você apenas não pode revender o código nem redistribuir o repositório como starter kit ou modelo.

PT
Tema