Pular para o conteúdo
Prumo
    Busca em todos os títulos da documentação.

    As decisões já foram tomadas.
    E estão escritas.

    O Prumo começa um projeto TypeScript com o framework, o desenho dos módulos, as regras do banco, a ligação da autenticação e os limites de teste já escolhidos. Cada um foi decidido uma vez, escrito dentro do projeto que o recebe, e transformado em algo que roda.

    Pelo terminal

    Um comando pergunta o que construir e escreve o projeto.

    npx @stjoseph/prumo new my-app

    Node 22.23.4 ou mais novo e pnpm 10.26 ou mais novo, no macOS, no Linux ou no Windows. Ler os documentos

    Com o Prumo Desktop

    O mesmo CLI num aplicativo que cria, lista e roda os seus projetos, no macOS, no Linux e no Windows.

    • macOS · Apple silicon e Intel

      Apple siliconIntel

      Não assinado: confirme uma vez com Abrir Mesmo Assim.

    • Linux · x64

      .deb.rpm

      Não assinado: instale com apt ou dnf.

    • Windows · x64

      Setup.exe

      Não assinado: Mais informações, depois Executar assim mesmo. Bloqueado onde o Controle Inteligente de Aplicativos está ligado.

    Prévias não assinadas da versão 0.0.9. Todo build precisa de Node 22.23.4 ou mais novo e de pnpm 10.26 ou mais novo. Como instalar

    Um projeto novo chega com duas coisas

    Código que já funciona
    Instalado, ligado e provado por iniciar, não por compilar. Todo template está commitado por inteiro e nenhum deles chama o scaffolder de terceiros na hora da instalação.
    As convenções que ele segue
    Uma pasta .prumo/ com as regras que esse código obedece. Qualquer assistente de IA que trabalhe no repositório a lê e passa a conhecê-las sem ninguém explicar. As convenções vivem no projeto, não na cabeça de alguém.
    Um trecho de um projeto gerado com --types api,web

    Três tipos, e do que cada um é feito

    • api

      O servidor

      • Fastify com uma estrutura domain/infra
      • tsyringe e Zod
      • MikroORM sobre PostgreSQL
      • Autenticação JWT própria
      • Swagger UI
      • Vitest com Testcontainers
    • web

      O app do navegador

      • Vite, Next ou Astro, com React
      • O mesmo login em todos
      • Tailwind e shadcn/ui
      • Formulários validados com Zod
    • mobile

      O app do celular

      • Expo com Expo Router
      • NativeWind e MMKV
      • Tokens guardados no expo-secure-store
      • Rodando numa development build

    Um tipo produz aquele projeto sozinho. Vários produzem um workspace pnpm, com o contrato de comunicação compartilhado, de modo que uma mudança de um lado quebra o outro no typecheck.

    Nada importante é decidido pelo silêncio

    Toda pergunta que o CLI faz também tem uma flag, que é como ele roda na CI sem terminal. Fora de um terminal interativo, uma resposta que falta é erro, não valor padrão.

    npx @stjoseph/prumo new my-app --types api,web --single-tenant --single-language --languages en --no-mcp --sign-in password --email --no-social

    A stack está travada, e diz isso

    Um documento nomeia cada pacote, cada piso de versão e as dezenove entradas descartadas de propósito. Ele foi escrito para ser tratado como dado: um projeto gerado herda tudo aquilo, e nada volta a ser resolvido projeto a projeto.

    Abrir a stack travada

    Prumo Desktop

    Um aplicativo de desktop que cria projetos Prumo, lista-os, lê suas convenções e roda seus apps. A versão 0.0.9, uma prévia não assinada para macOS, Linux e Windows, já pode ser baixada.