{"id":21479979,"url":"https://github.com/rsmuthu/monorepo-template","last_synced_at":"2026-04-11T01:04:39.939Z","repository":{"id":52090457,"uuid":"520772784","full_name":"RSMuthu/Monorepo-Template","owner":"RSMuthu","description":"This is a Monorepo template for react, node and normal javascript library components.","archived":false,"fork":false,"pushed_at":"2022-08-03T07:42:59.000Z","size":238,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-23T18:21:01.575Z","etag":null,"topics":["babel","commitlint","eslint","jest","lerna","lerna-monorepo","monorepo","nodejs","nx","nyc","react","reactjs","semver-release","storybook","stylelint","verdaccio","webpack","webpack5"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/RSMuthu.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-08-03T07:02:53.000Z","updated_at":"2022-08-03T07:29:56.000Z","dependencies_parsed_at":"2022-09-07T02:24:58.701Z","dependency_job_id":null,"html_url":"https://github.com/RSMuthu/Monorepo-Template","commit_stats":null,"previous_names":[],"tags_count":0,"template":true,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RSMuthu%2FMonorepo-Template","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RSMuthu%2FMonorepo-Template/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RSMuthu%2FMonorepo-Template/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RSMuthu%2FMonorepo-Template/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/RSMuthu","download_url":"https://codeload.github.com/RSMuthu/Monorepo-Template/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244005448,"owners_count":20382435,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["babel","commitlint","eslint","jest","lerna","lerna-monorepo","monorepo","nodejs","nx","nyc","react","reactjs","semver-release","storybook","stylelint","verdaccio","webpack","webpack5"],"created_at":"2024-11-23T12:09:42.130Z","updated_at":"2026-04-11T01:04:39.887Z","avatar_url":"https://github.com/RSMuthu.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Monorepo Template\nThis is a monorepo template which holds library components built off react, plain js or nodejs.\\\nThis is more of an accumulation of my few learning in past few weeks.\\\nAll the common and dev dependencies are pulled out to the rootdir of monorepo to leverage those dependencies from the packages while few majors (like, react \u0026 react-dom) are set as peer-dependencies.\\\nMost necesary scripts have also been added along with the monorepo template to facilitate ci/cd workflows.\nReact peer dependencies are set to v17.0.2 and not the latest v18 as it would more amendment to my base template\n\nRecommended Node version: v16.11+ (for es13 specification features)\n\n#### Package Creation\nShowing the images for react package creation alone. The other types of packages can be created in similar way.\n\n![Package creation](img/creation.png)\n\n![Created Package Structure](img/packageStructure.png)\n\n#### Features available in this template\n- [lerna](https://lerna.js.org/) setup for monorepo \u0026 workspace management\n- lerna task execution via [nx](https://nx.dev/) (for effective lerna task execution)\n- [Babel](https://babeljs.io/) setup (for ecmascript)\n- Linters ([eslint](https://eslint.org/) \u0026 [stylelint](https://stylelint.io/) - standard configs and few of my personal likings)\n- unit testing [Jest](https://jestjs.io/) (setup on both package level and repo level)\n- code coverage + threshold validation via [nyc](https://istanbul.js.org/) \u0026 [Jest](https://jestjs.io/)\n- [Storybook](https://storybook.js.org/) for UI components (along with feature for attaching [figma](https://www.figma.com/) or adobe design)\n- Custom package creation command for this monorepo template.\n- [Webpack5](https://webpack.js.org/) bundler made to handle different scenarios of packages\n- [semver](https://semver.org/) versioning through version bump based on commit message\n- commit message enforced via [commitlint](https://commitlint.js.org/) to conventional commit standards\n- Git hooks setup via [husky](https://typicode.github.io/husky/) (pre-commit \u0026 commit-msg)\n- Basic Proxy registry (along with uplink) setup with [verdaccio](https://verdaccio.org/)\n\n#### Future plans\n- Update react to latest v18 for its latest features\n- add Vuejs compatibility to this monorepo template\n- add a custom storybook framework for supporting both vuejs \u0026 reactjs together on storybook bundling\n- add clean github workflows to the monorepo template\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frsmuthu%2Fmonorepo-template","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frsmuthu%2Fmonorepo-template","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frsmuthu%2Fmonorepo-template/lists"}