Aviso
Este repositório não é mais afetado, pois a CLI do Shadcn agora suporta monorepos nativamente, obrigado por usar o modelo.
Isso é o Turborepo Starter com Shadcn/UI pré-configurado.
Observação
Este exemplo usa pnpm como gerenciador de pacotes.
versão npm versão bun
Clone o repositório:
git clone https://github.com/dan5py/turborepo-shadcn-ui.gitInstale dependências:
cd turborepo-shadcn-ui
pnpm installUse o script pré-fabricado:
pnpm ui add < component-name >Isso funciona como a cli
shadcn/ui.
O Turborepo oferece um comando simples para adicionar um novo aplicativo:
pnpm turbo gen workspace --name < app-name > Isso criará um novo aplicativo vazio no diretório apps .
Se quiser, você pode copiar um aplicativo existente com:
pnpm turbo gen workspace --name < app-name > --copyObservação
Lembre -se de executar pnpm install após copiar um aplicativo.
Este turborepo inclui os seguintes pacotes/aplicativos:
docs : um aplicativo Next.js@repo/ui : uma biblioteca de componentes de stub React (alimentada por shadcn/ui )@repo/eslint-config : configurações eslint (inclui eslint-config-next e eslint-config-prettier )@repo/typescript-config : tsconfig.json s usado em todo o monorepoCada pacote/aplicativo é 100% TypeScript.
Este turborepo já tem algumas ferramentas adicionais configuradas para você:
Para criar todos os aplicativos e pacotes, execute o seguinte comando:
cd turborepo-shadcn-ui
pnpm buildPara desenvolver todos os aplicativos e pacotes, execute o seguinte comando:
cd turborepo-shadcn-ui
pnpm devO Turborepo pode usar uma técnica conhecida como cache remoto para compartilhar artefatos de cache entre as máquinas, permitindo que você compartilhe caches de construção com sua equipe e pipelines de CI/CD.
Por padrão, o Turborepo cache localmente. Para ativar o cache remoto, você precisará de uma conta no Vercel. Se você não tiver uma conta, pode criar uma, digite os seguintes comandos:
cd turborepo-shadcn-ui
npx turbo login
Isso autenticará a cli turborepo com sua conta de vercel.
Em seguida, você pode vincular seu turborepo ao seu cache remoto executando o seguinte comando da raiz do seu turborepo:
npx turbo linkSaiba mais sobre o poder do turborepo:
Saiba mais sobre Shadcn/UI: