{"id":14978342,"url":"https://github.com/waldronmatt/shareable-configs","last_synced_at":"2025-10-28T10:32:38.390Z","repository":{"id":37055181,"uuid":"478835048","full_name":"waldronmatt/shareable-configs","owner":"waldronmatt","description":"My personal shareable configurations with fully automated package publishing to NPM Registry.","archived":false,"fork":false,"pushed_at":"2023-12-03T01:03:59.000Z","size":4665,"stargazers_count":14,"open_issues_count":22,"forks_count":3,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-02-08T11:36:39.482Z","etag":null,"topics":["auto-config","babel-config","browserslist-config","commitizen-config","commitlint-config","eslint-config","htmlhint-config","jest-config","lerna","lint-staged-config","markdownlint-config","monorepo","postcss-config","prettier-config","secretlint-config","semantic-release-config","stylelint-config","tsconfig-config","webpack-config","yarn-workspaces"],"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/waldronmatt.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}},"created_at":"2022-04-07T05:08:20.000Z","updated_at":"2025-01-20T19:06:14.000Z","dependencies_parsed_at":"2023-11-03T23:30:48.923Z","dependency_job_id":null,"html_url":"https://github.com/waldronmatt/shareable-configs","commit_stats":null,"previous_names":[],"tags_count":173,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/waldronmatt%2Fshareable-configs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/waldronmatt%2Fshareable-configs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/waldronmatt%2Fshareable-configs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/waldronmatt%2Fshareable-configs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/waldronmatt","download_url":"https://codeload.github.com/waldronmatt/shareable-configs/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":238638038,"owners_count":19505520,"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":["auto-config","babel-config","browserslist-config","commitizen-config","commitlint-config","eslint-config","htmlhint-config","jest-config","lerna","lint-staged-config","markdownlint-config","monorepo","postcss-config","prettier-config","secretlint-config","semantic-release-config","stylelint-config","tsconfig-config","webpack-config","yarn-workspaces"],"created_at":"2024-09-24T13:57:26.712Z","updated_at":"2025-10-28T10:32:37.910Z","avatar_url":"https://github.com/waldronmatt.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Shareable Configs\n\nMy personal shareable configurations with fully automated package publishing to the `NPM` Registry.\n\n## Features\n\n- Automated publishing to the `NPM` Registry for changed packages\n- Automated `CHANGELOG.md` generation and `GitHub` releases using conventional commits\n- Automated merging of `Dependabot` pull requests of dependency updates.\n\n## Usage\n\n### Installation\n\nInstall all configs and associated packages as development dependencies (**excludes** Webpack):\n\n```bash\nyarn add -D auto @waldronmatt/auto-config @waldronmatt/browserslist-config @commitlint/cli @waldronmatt/commitlint-config eslint @waldronmatt/eslint-config htmlhint @waldronmatt/htmlhint-config jest @waldronmatt/jest-config lint-staged @waldronmatt/lint-staged-config markdownlint @waldronmatt/markdownlint-config postcss @waldronmatt/postcss-config prettier @waldronmatt/prettier-config secretlint @waldronmatt/secretlint-config semantic-release @waldronmatt/semantic-release-config stylelint @waldronmatt/stylelint-config typescript @waldronmatt/tsconfig-config\n```\n\n### Set up Husky\n\nFollow the directions [found here](https://github.com/waldronmatt/shareable-configs/tree/main/docs/HUSKY.md).\n\n### Set up Commitizen\n\nFollow the directions [found here](https://github.com/waldronmatt/shareable-configs/tree/main/docs/COMMITIZEN.md).\n\n### Create Config Files\n\nFollow the `Usage` section via the `README.md` in each package.\n\nSome packages have examples of extended configurations to better support other packages and/or constitute a complete working configuration for projects.\n\nSee [eslint](https://github.com/waldronmatt/shareable-configs/tree/main/packages/eslint-config#extending), [jest](https://github.com/waldronmatt/shareable-configs/tree/main/packages/jest-config#extending), [lint-staged](https://github.com/waldronmatt/shareable-configs/tree/main/packages/lint-staged-config#extending), [semantic-release](https://github.com/waldronmatt/shareable-configs/tree/main/packages/semantic-release-config#extending), [stylelint](https://github.com/waldronmatt/shareable-configs/tree/main/packages/stylelint-config#extending), and [tsconfig](https://github.com/waldronmatt/shareable-configs/tree/main/packages/tsconfig-config#extending).\n\n### Add NPM Scripts\n\n```bash\nnpm set-script lint:md \"markdownlint --fix **/*.md --ignore node_modules --ignore **/CHANGELOG.md\" \u0026\u0026 npm set-script lint:js \"eslint --fix **/*.{js,jsx,ts,tsx}\" \u0026\u0026 npm set-script lint:css \"stylelint --fix **/*.{css,scss}\" \u0026\u0026 npm set-script lint:html \"htmlhint --config ./node_modules/@waldronmatt/htmlhint-config/index.json **/*.html\" \u0026\u0026 npm set-script lint:secrets \"npx secretlint **/*\" \u0026\u0026 npm set-script lint \"yarn lint:md \u0026\u0026 yarn lint:js \u0026\u0026 yarn lint:css \u0026\u0026 yarn lint:html \u0026\u0026 yarn lint:secrets\" \u0026\u0026 npm set-script test \"jest\"\n```\n\n### Install Git Hooks\n\nInstall husky and all hooks and npm scripts associated with configs:\n\n```bash\nnpx husky add .husky/commit-msg 'npx --no-install commitlint --edit' \u0026\u0026 npx husky add .husky/pre-commit 'npx --no-install lint-staged'\n```\n\n### Webpack\n\nFor Webpack, follow the directions in the [README.md](https://github.com/waldronmatt/shareable-configs/tree/main/packages/webpack-config#readme).\n\n## Other Awesome Monorepos\n\n- [lerna-release-workflow](https://github.com/jonwa/lerna-release-workflow) - A basic Lerna monorepo with Yarn Workspaces, Conventional Commits and GitHub Actions.\n- [base-configs](https://github.com/demartini/base-configs) - A collection of base configs for code quality and linting tools.\n- [threepio](https://github.com/the-holocron/threepio) - Shareable configurations that are used within the Galaxy.\n- [medly](https://github.com/medly/configs) - Share common configurations across different projects.\n- [code-quality-tools](https://github.com/strvcom/code-quality-tools) - Shareable configurations for various coding-style/best practices/lint tools.\n- [frontend-configs](https://github.com/drivy/frontend-configs) - NPM-Published front-end shareable configurations.\n\n## License\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwaldronmatt%2Fshareable-configs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwaldronmatt%2Fshareable-configs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwaldronmatt%2Fshareable-configs/lists"}