examples/with-shell-commands/README.md
This Turborepo starter is maintained by the Turborepo core team. This template is great for issue reproductions and exploring building task graphs without frameworks.
Run the following command:
npx create-turbo@latest -e with-shell-commands
Giving the Turborepo core team a minimal reproduction is the best way to create a tight feedback loop for a bug you'd like to report.
Because most monorepos will rely on more tooling than Turborepo (frameworks, linters, formatters, etc.), it's often useful for us to have a reproduction that strips away all of this other tooling so we can focus only on Turborepo's role in your repo. This example does exactly that, giving you a good starting point for creating a reproduction.
npx @turbo/workspaces convert to switch package managers.This Turborepo includes the following packages:
app-a: A final package that depends on all other packages in the graph and has no dependents. This could resemble an application in your monorepo that consumes everything in your monorepo through its topological tree.app-b: Another final package with many dependencies. No dependents, lots of dependencies.pkg-a: A package that has all scripts in the root package.json.pkg-b: A package with almost all scripts in the root package.json.tooling-config: A package to simulate a common configuration used for all of your repository. This could resemble a configuration for tools like TypeScript or ESLint that are installed into all of your packages.If you haven't yet, install global turbo to run tasks.
turbo build lint check-types: Runs all tasks in the default graph.turbo build: A basic command to build app-a and app-b in parallel.turbo build --filter=app-a: Building only app-a and its dependencies.turbo lint: A basic command for running lints in all packages in parallel.