Skip to content
generated from dotmh/ts

WIP: A tool to build mono-repo packages in the right order.

License

Notifications You must be signed in to change notification settings

dotmh/smart-builder

Repository files navigation

DotMH

DotMH Smart Builder

TypeScript NodeJS PNPM Visual Studio Code Conventional Commits ESLint Prettier GitHub Actions

License Contributor Covenant

Quality gate

Warning

This project is pre-release and so may contain bugs or not work as expected. It is also likely to change

Introduction

A tool to build Monorepos based on the dependency graph. This allows you to build the packages in the right order.

It will read the pnpm-workspace.yaml file to get the list of packages and determine the order to build them in It will then run the build command set up in the BUILD_SCRIPT variable It is designed to ONLY Work with pnpm workspaces not npm or yarn at the moment

Running

Warning

This project is pre-release and so may contain bugs or not work as expected. It is also likely to change

$ pnpm add @dotmh/smart-builder
$ pnpm exec smart-builder

It needs to run from the root project folder (that is the folder that contains pnpm-workspaces.yaml or pnpm-lock.yaml)

Configuration

This uses environment variables to configure its behaviour.

  • SKIP_BUILD - set to yes to enable - will allow you to see what it is going to build and in what order
  • DEBUG - set to yes to enable - will allow you to see more logging

Ignoring

To ignore a package from the build list add it to the .sbignore file at the root of the project Add the package names to ignore on a new line for each.

License

This repo is set up with an Apache 2.0 license and this will carry over to any projects that are generated from the template unless you remove it.

About

WIP: A tool to build mono-repo packages in the right order.

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages