@juicyllama/repo
v0.9.0
Published
A collection of utilities for working with repositories.
Readme
Visit the JuicyLlama to learn more.
@juicyllama/repo
A package for repo configuration helpers
Install
npm install @juicyllama/repoTurbo
We use TurboRepo for handling full projects within a single monorepo.
On installation of @juicyllama/repo it will sync your shared turbo file and generate the turbo.json, this is due to limitations with TurboRepos extends functionality.
If you need to make changes or extend this, simply update turbo.shared.json and run node ./node_modules/@juicyllama/repo/dist/turbo/sync-turbo.mjs
Root file
//turbo.shared.json
{
"extends": ["@juicyllama/repo/turbo"],
"globalEnv": [
...
]
}Linting
Were using biomejs for linting and formatting.
//biome.json
{
"extends": ["@juicyllama/repo/biome"]
}TypeScript
You can extend the pre-build typescript configurations here:
NestJs
//tsconfig.json
{
"extends": "@juicyllama/repo/typescript/nestjs.json"
}Next.Js
//tsconfig.json
{
"extends": "@juicyllama/repo/typescript/nextjs.json"
}Nuxt
//tsconfig.json
{
"extends": "@juicyllama/repo/typescript/nuxt.json"
}React
//tsconfig.json
{
"extends": "@juicyllama/repo/typescript/react-library.json"
}Base
//tsconfig.json
{
"extends": "@juicyllama/repo/typescript/base.json"
}Jest
Shared Jest configs are available:
//jest.config.ts
import { Config } from '@juicyllama/repo/jest/base'
export default ConfigNestJS config:
//jest.config.ts
import { nestConfig } from '@juicyllama/repo/jest/nest'
export default nestConfigNext.js config:
//jest.config.ts
import { nextConfig } from '@juicyllama/repo/jest/next'
export default nextConfigHusky
The package will copy over .husky folder if it does not already exist with a recommended default setup.
IDE
VS Code
A suggested vs code settings file which complements this set up can be found in ./.vs-code/settings.json
