Monorepos without the hassle.
🚧 Danger: unstable hobby project 🚧
Freighter scaffolds and manages monorepo configurations. Here's what you get right out of the box:
- Yarn Workspaces
- Jest projects
- Babel 7
- Code quality checks with precommit hooks
- A solid CI script in a single command
Requirements: you've already got
$ yarn global add @freighter/cli
Now you should have a new
freighter command in the terminal. Try out the
$ freighter init new-project
In about 15-30 seconds, you should have yourself a fancy, batteries-included monorepo :tada:
Here are the scripts you'll probably find useful:
yarn lintruns ESLint on all the packages
yarn testruns every test in the monorepo
yarn flowtype checks everything
yarn cirun all 3 in CI mode
I built Freighter because it can take days to configure all the tooling that makes monorepos so enjoyable. I don't want to spend days. Frankly, I'd rather be building apps. So if Freighter ends up being more work than it's worth, I'll abandon it.
:dragon: You've been warned.
Why the name?
Because freighters ship containers. npm packages are kinda like containers. Therefore, monorepos are freighters.
Accelerating the project
If you like the idea of Freighter, give it a star :star:
It'll help me gauge interest in the project.