Minimal monorepo boilerplate featuring NPM Workspaces along with TypeScript, Webpack and ESLint.
- Monorepository using NPM workspaces
- TypeScript support for all sub-packages
- Express backend and React frontend, both live-reloadable
Clone this repository:
git clone https://github.com/icmx/just-monorepo
Go to local saved copy:
cd just-monorepo
Install dependencies:
npm install
Note: this project requires NPM v7 or higher. If you haven't one, there are some options.
Build packages:
npm run build
One can also build a specific package, e.g. npm run build:client
.
Run live-reload for applications packages:
npm run watch:client
npm run watch:server
Note: client application requires server application running. They can be started together on separate terminals e.g.
Lint packages:
npm run lint
One can also lint specific package, e.g. npm run lint:client
.
This project isn't about UI, but in case you need to see it, here it is:
There are lots of similar boilerplates already indeed. However, most of them are incredibly bloated by endless dependencies, which may be deprecated, outdated and not even used at all, thus I suppose there should be some really lightweight and easy to use alternative.
Please note that packages choice for Just Monorepo not only bare, but also sane — this project is not about making it as small as possible.
Project structure is described in HOWTO.
- Just Gulp — same project, but much smaller and for bundling frontend application by using gulp.
- Just Webpack — same, but for Webpack.