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

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/web/terminal-basics.md (or send Accept: text/markdown).

Comandos, arquivos e configuração

Aprenda onde colar comandos, como abrir a pasta correta do projeto, editar arquivos .env, parar um servidor e reportar um erro de configuração sem compartilhar segredos.

Um comando vai no terminal

Um terminal é a janela onde você digita instruções para o seu computador. Em Visual Studio Code, primeiro abra sua pasta supastack usando Arquivo → Abrir pasta e selecione Terminal → Novo Terminal. O novo terminal começa nessa pasta. No Windows escolha PowerShell usando o menu próximo ao botão + do terminal. Use blocos macOS/Linux em um terminal macOS ou Linux.

Cole apenas o conteúdo de um bloco de comando, um comando por vez, e pressione Enter. Não cole os crases do Markdown ao redor, um prompt como PS C:\... ou uma saída de exemplo. As linhas que começam com # são explicações; eles não executam nada. Aguarde a conclusão de cada comando de instalação antes de inserir o próximo comando. Um comando do servidor continua em execução e não retorna um novo prompt até que você o interrompa.

Verifique qual pasta o terminal está usando

Raiz do repositório significa a pasta supastack de nível superior contendo package.json, pnpm-workspace.yaml, aplicativos e pacotes. A menos que uma etapa indique o contrário, execute comandos lá. O comando abaixo imprime a pasta atual; a listagem de arquivos deve mostrar package.json. No Windows PowerShell pwd e ls também funcionam.

Se a listagem mostrar apenas o conteúdo de apps/web ou apps/mobile, digite cd ../.. e pressione Enter para retornar à raiz. Se mostrar sua pasta pessoal, digite cd seguido de um espaço e o caminho completo para seu clone, entre aspas quando contiver espaços. Abrir a pasta do projeto no editor e criar um novo terminal geralmente é mais fácil.

pwd
ls

A configuração vai em um arquivo, não no terminal

Um bloco como AI_PROVIDER=fake é um texto de configuração. Abra o arquivo .env nomeado no editor, encontre a linha que começa com AI_PROVIDER=, substitua seu valor e salve com Ctrl + S (Command + S no macOS). Cada configuração ocupa uma linha no formato KEY=value. Não adicione crases Markdown. Evite cópias duplicadas da mesma chave em um arquivo.

Use root .env para comandos de migração de banco de dados, apps/web/.env.local para o servidor Web Next.js e apps/mobile/.env.local para Expo. Next e Expo são executados dentro de suas próprias pastas de aplicativos e não carregam automaticamente o root .env. Se uma conexão de banco de dados for alterada, atualize DATABASE_URL em root .env e apps/web/.env.local para que as migrações e o servidor usem o mesmo banco de dados. Mantenha o arquivo de exemplo inalterado para referência futura.

Arquivos cujos nomes começam com um ponto podem estar ocultos no seu gerenciador de arquivos; o Explorer do editor os mostra. Certifique-se de que o nome do arquivo seja exatamente .env.local, não .env.local.txt. Esses arquivos locais podem conter senhas e são excluídos do Git; não os carregue nem cole seu conteúdo em mensagens de suporte.

Mantenha o servidor funcionando; use outro terminal para comandos

O servidor de desenvolvimento atende seu aplicativo enquanto você trabalha. Deixe seu terminal aberto quando um tutorial disser aberto localhost:3000. localhost significa este computador; :3000 é a porta, como uma porta numerada usada pelo aplicativo. Coloque URL na barra de endereço do seu navegador, não no terminal.

Para executar outro comando enquanto o servidor estiver ativo, selecione Terminal → Novo Terminal no editor. O novo terminal é uma janela separada no mesmo projeto. Para parar o servidor, selecione seu terminal e pressione Ctrl + C uma vez. No Windows, se for solicitado Encerrar trabalho em lote, digite Y e pressione Enter. Aguarde o prompt normal antes de iniciá-lo novamente.

Após editar as configurações do ambiente Web, pare e reinicie o servidor Web com o comando abaixo. Salvar um arquivo de origem normalmente atualiza a página automaticamente, mas as alterações de ambiente precisam ser reiniciadas. Após editar as configurações de Expo, pare Expo e execute corepack pnpm --filter @supastack/mobile start --clear para reiniciar e limpar seu pacote em cache.

corepack pnpm --filter @supastack/web dev

Leia uma falha e peça ajuda útil

Se uma instalação retornar um texto de erro em vermelho, pare nessa etapa. Leia o primeiro erro em vez de continuar a iniciar o aplicativo. Comando não encontrado geralmente significa uma ferramenta ausente; nenhum package.json geralmente significa a pasta errada; ECONNREFUSED geralmente significa que um servidor ou banco de dados necessário não está em execução; EADDRINUSE significa que outro processo já usa a porta.

Ao pedir ajuda, inclua seu sistema operacional, o guia URL e o número da etapa, o comando exato que você digitou e a primeira mensagem de erro. Remova senhas, chaves API, tokens e a parte da senha de qualquer banco de dados URL. Não envie seus arquivos .env. Uma captura de tela do erro pode ajudar, mas o texto copiável é mais fácil de diagnosticar.

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