{"id":16252498,"url":"https://github.com/remarkablemark/lerna-template","last_synced_at":"2025-03-19T20:31:20.990Z","repository":{"id":37092465,"uuid":"405273013","full_name":"remarkablemark/lerna-template","owner":"remarkablemark","description":"🐉 Lerna TypeScript template","archived":false,"fork":false,"pushed_at":"2024-05-01T12:05:02.000Z","size":12760,"stargazers_count":14,"open_issues_count":4,"forks_count":3,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-05-01T21:25:41.688Z","etag":null,"topics":["lerna","monorepo","react","storybook","template","typescript"],"latest_commit_sha":null,"homepage":"https://lerna-template.netlify.app","language":"TypeScript","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/remarkablemark.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["remarkablemark"],"patreon":"remarkablemark","open_collective":null,"ko_fi":"remarkablemark","tidelift":null,"community_bridge":null,"liberapay":"remarkablemark","issuehunt":null,"otechie":null,"custom":["https://b.remarkabl.org/teespring"]}},"created_at":"2021-09-11T03:26:44.000Z","updated_at":"2024-05-03T12:59:25.454Z","dependencies_parsed_at":"2024-04-15T12:52:34.515Z","dependency_job_id":"7fbb17d5-061e-4116-bb52-8e6c90fe3105","html_url":"https://github.com/remarkablemark/lerna-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/remarkablemark%2Flerna-template","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/remarkablemark%2Flerna-template/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/remarkablemark%2Flerna-template/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/remarkablemark%2Flerna-template/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/remarkablemark","download_url":"https://codeload.github.com/remarkablemark/lerna-template/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244018895,"owners_count":20384654,"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":["lerna","monorepo","react","storybook","template","typescript"],"created_at":"2024-10-10T15:13:54.154Z","updated_at":"2025-03-19T20:31:19.532Z","avatar_url":"https://github.com/remarkablemark.png","language":"TypeScript","funding_links":["https://github.com/sponsors/remarkablemark","https://patreon.com/remarkablemark","https://ko-fi.com/remarkablemark","https://liberapay.com/remarkablemark","https://b.remarkabl.org/teespring"],"categories":[],"sub_categories":[],"readme":"# Lerna Template\n\n[![build](https://github.com/remarkablemark/lerna-template/actions/workflows/build.yml/badge.svg)](https://github.com/remarkablemark/lerna-template/actions/workflows/build.yml)\n[![codecov](https://codecov.io/gh/remarkablemark/lerna-template/branch/master/graph/badge.svg?token=1SYU67HOUQ)](https://codecov.io/gh/remarkablemark/lerna-template)\n[![Netlify Status](https://api.netlify.com/api/v1/badges/46dc4645-697d-455e-8156-9817213bb13a/deploy-status)](https://app.netlify.com/sites/lerna-template/deploys)\n\n[Lerna](https://github.com/lerna/lerna) template.\n\n## Prerequisites\n\n- [Node.js](https://nodejs.org/)\n- [npm](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm)\n\n## Install\n\nClone the repository:\n\n```sh\ngit clone https://github.com/remarkablemark/lerna-template.git\ncd lerna-template\n```\n\nInstall the dependencies:\n\n```sh\nnpm install\n```\n\n## Available Scripts\n\nIn the root directory, you can run:\n\n### `npm run build`\n\nBuilds all packages:\n\n```sh\nnpm run build\n```\n\nBuilds a single package:\n\n```sh\nnpm run build -- --scope=\u003cpackage-name\u003e\n```\n\nFor example:\n\n```sh\nnpm run build -- --scope=example-a\n```\n\n### `npm run clean`\n\nDeletes build artifacts for all packages:\n\n```sh\nnpm run clean\n```\n\nCleans a single package:\n\n```sh\nnpm run clean -- --scope=\u003cpackage-name\u003e\n```\n\nFor example:\n\n```sh\nnpm run clean -- --scope=example-a\n```\n\n### `npm run create-package`\n\nCreates a package:\n\n```sh\nnpm run create-package\n```\n\nCreates a package using the CLI:\n\n```sh\nnpm run create-package \u003cpackage-name\u003e -- --template=\u003ctemplate\u003e\n```\n\nCreates package `foo` using the TypeScript template (default):\n\n```sh\nnpm run create-package foo -- --template=typescript\n```\n\nCreates package `bar` using the React template:\n\n```sh\nnpm run create-package bar -- --template=react\n```\n\n### `npm run lint`\n\nLints all packages:\n\n```sh\nnpm run lint\n```\n\nLints a single package:\n\n```sh\nnpm run lint -- --scope=\u003cpackage-name\u003e\n```\n\nFor example:\n\n```sh\nnpm run lint -- --scope=example-a\n```\n\n### `npm run lint:fix`\n\nFixes lint errors for all packages:\n\n```sh\nnpm run lint:fix\n```\n\nFixes lint errors for a single package:\n\n```sh\nnpm run lint:fix -- --scope=\u003cpackage-name\u003e\n```\n\nFor example:\n\n```sh\nnpm run lint:fix -- --scope=example-a\n```\n\n### `npm run storybook`\n\nRuns Storybook server:\n\n```sh\nnpm run storybook\n```\n\n### `npm test`\n\nRuns tests for all packages:\n\n```sh\nnpm test\n```\n\nRuns tests for a single package:\n\n```sh\nnpm test -- --scope=\u003cpackage-name\u003e\n```\n\nFor example:\n\n```sh\nnpm run test -- --scope=example-a\n```\n\n## Release\n\nRelease is automated with [Lerna](https://lerna.js.org/).\n\nIf npm publish failed:\n\n1. Delete the Git tags on remote\n2. Rerun the [publish](https://github.com/remarkablemark/lerna-template/actions/workflows/publish.yml) workflow\n\nBecause Lerna commits and pushes the release to the remote repository, branch protection rules have been disabled.\n\nTo prevent race conditions with Lerna release, don't merge PRs until after the publish workflow is done.\n\n### Canary\n\nTo release a canary version for testing, run the [publish](https://github.com/remarkablemark/lerna-template/actions/workflows/publish.yml) workflow with a branch other than `master`.\n\n### Dry Run\n\nTo see the to-be-updated versions, run the [publish](https://github.com/remarkablemark/lerna-template/actions/workflows/publish.yml) workflow and enable **Dry run**.\n\n## License\n\n[MIT](LICENSE)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fremarkablemark%2Flerna-template","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fremarkablemark%2Flerna-template","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fremarkablemark%2Flerna-template/lists"}