Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ericz99/lerna-workspace-template
Easy to use Monorepo Project Template!
https://github.com/ericz99/lerna-workspace-template
action-hooks babel cicd eslint expressjs jest lerna monorepo nodejs react tailwindcss yarn-workspaces
Last synced: 4 days ago
JSON representation
Easy to use Monorepo Project Template!
- Host: GitHub
- URL: https://github.com/ericz99/lerna-workspace-template
- Owner: ericz99
- License: mit
- Created: 2021-02-21T16:55:47.000Z (almost 4 years ago)
- Default Branch: master
- Last Pushed: 2021-02-22T02:20:47.000Z (almost 4 years ago)
- Last Synced: 2024-11-30T04:24:19.257Z (2 months ago)
- Topics: action-hooks, babel, cicd, eslint, expressjs, jest, lerna, monorepo, nodejs, react, tailwindcss, yarn-workspaces
- Language: JavaScript
- Homepage:
- Size: 465 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## Monorepo Template using Lerna & Yarn Workspaces
> A Monorepo with multiple packages and a shared build, test, and release process.
## Content
The project now consists of 2 packages.
> Of course you can add more packages, feel free to play around with it.
- **api**: boilerplate nodejs express with babel configured for es6+.
- **web**: create-react-app bootstraped (latest version) + tailwindcss configured## Tools that are used
- [Lerna](https://lernajs.io/) - The Monorepo manager
- [Yarn Workspaces](https://yarnpkg.com/lang/en/docs/workspaces/) - Sane multi-package management
- [React](https://reactjs.org/) - JavaScript library for user interfaces
- [Tailwindcss](https://tailwindcss.com/) - Easy to use CSS using classNames
- [Babel](https://babeljs.io/) - Compiles next-gen JavaScript
- [Eslint](https://eslint.org/) - Linting Tool
- [Prettier](https://prettier.io/) - Format Code Tool
- [Jest](https://jestjs.io/) - Unit/Snapshot Testing
- [Commitizen](https://commitizen-tools.github.io/commitizen/) - Best commit tool## Usage
- `yarn dev` - To run all `start script` in `/packages`.
- `yarn test` - Run all linting and unit tests before committing.## Lerna
- `yarn new-version` - Only commit conventional commits.
- `yarn diff` - Only show differences from previous commits vs now.## Continuous Integration / Continuous Development
Currently this template only support GitHub Action. But, you are free to add other CI/CD tools, like CircleCI, Jenkins, AWS CodePipeline, and etc...
## Todo
- [ ] Add docker support that separate all packages into services
- [ ] Add more CI/CD tool (Only support GitHub Action)## Current Bug
- None
## Template Info
### Author
Eric Zhang
### Version
1.0.0
### License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details