{"id":25959509,"url":"https://github.com/liblaf/copier-shared","last_synced_at":"2026-06-07T09:01:27.573Z","repository":{"id":258151578,"uuid":"872446711","full_name":"liblaf/copier-shared","owner":"liblaf","description":"🧰 Copier template for shared repository maintenance with pre-commit, GitHub Actions, MegaLinter, and reproducible updates.","archived":false,"fork":false,"pushed_at":"2026-06-01T18:16:41.000Z","size":361,"stargazers_count":2,"open_issues_count":5,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-06-01T20:15:44.920Z","etag":null,"topics":["automation","code-quality","continuous-integration","copier","copier-template","developer-tooling","github-actions","megalinter","pre-commit","project-template","repository-hygiene","repository-maintenance"],"latest_commit_sha":null,"homepage":"","language":"Jinja","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/liblaf.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"custom":["https://afdian.com/a/liblaf"]}},"created_at":"2024-10-14T13:01:56.000Z","updated_at":"2026-05-24T20:44:53.000Z","dependencies_parsed_at":"2026-05-17T07:04:09.740Z","dependency_job_id":null,"html_url":"https://github.com/liblaf/copier-shared","commit_stats":null,"previous_names":["liblaf/copier-share","liblaf/copier-shared"],"tags_count":24,"template":false,"template_full_name":null,"purl":"pkg:github/liblaf/copier-shared","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/liblaf%2Fcopier-shared","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/liblaf%2Fcopier-shared/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/liblaf%2Fcopier-shared/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/liblaf%2Fcopier-shared/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/liblaf","download_url":"https://codeload.github.com/liblaf/copier-shared/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/liblaf%2Fcopier-shared/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34014821,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-07T02:00:07.652Z","response_time":124,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["automation","code-quality","continuous-integration","copier","copier-template","developer-tooling","github-actions","megalinter","pre-commit","project-template","repository-hygiene","repository-maintenance"],"created_at":"2025-03-04T18:38:19.092Z","updated_at":"2026-06-07T09:01:27.527Z","avatar_url":"https://github.com/liblaf.png","language":"Jinja","funding_links":["https://afdian.com/a/liblaf"],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n\n![copier-shared](https://socialify.git.ci/liblaf/copier-shared/image?description=1\u0026forks=1\u0026issues=1\u0026logo=https%3A%2F%2Fraw.githubusercontent.com%2Fcopier-org%2Fcopier%2Frefs%2Fheads%2Fmaster%2Fimg%2Flogo.svg\u0026name=1\u0026owner=1\u0026pattern=Transparent\u0026pulls=1\u0026stargazers=1\u0026theme=Auto)\n\n[![Made with Copier](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/copier-org/copier/master/img/badge/badge-black.json)](https://github.com/copier-org/copier)\n[![Shared / Copier Update](https://github.com/liblaf/copier-shared/actions/workflows/shared-copier-update.yaml/badge.svg)](https://github.com/liblaf/copier-shared/actions/workflows/shared-copier-update.yaml)\n[![Shared / MegaLinter](https://github.com/liblaf/copier-shared/actions/workflows/shared-mega-linter.yaml/badge.svg)](https://github.com/liblaf/copier-shared/actions/workflows/shared-mega-linter.yaml)\n[![pre-commit.ci status](https://results.pre-commit.ci/badge/github/liblaf/copier-shared/main.svg)](https://results.pre-commit.ci/latest/github/liblaf/copier-shared/main)\n\n[Changelog](https://github.com/liblaf/copier-shared/blob/main/CHANGELOG.md) · [Issues](https://github.com/liblaf/copier-shared/issues) · [Pull Requests](https://github.com/liblaf/copier-shared/pulls) · [Copier Docs](https://copier.readthedocs.io/)\n\n![Rule](https://cdn.jsdelivr.net/gh/andreasbm/readme/assets/lines/rainbow.png)\n\n\u003c/div\u003e\n\n## 👋 About\n\n`copier-shared` is the maintenance layer for a repository. It is a\n[Copier](https://github.com/copier-org/copier) template that adds the boring\nbut valuable parts of project hygiene for you: shared pre-commit hooks,\nautomation workflows, and a committed answers file so the template can be\nre-applied later without guesswork.\n\n## ✨ What You Get\n\n- 🪝 A generated `.pre-commit-config.yaml` with Ruff, Biome,\n  `dotenv-linter`, `shellcheck`, `rumdl`, and the standard pre-commit safety\n  hooks.\n- 🤖 Three GitHub Actions workflows for weekly Copier refresh PRs,\n  MegaLinter autofix PRs, and scheduled review runs.\n- 🧾 A generated answers file at `.config/copier/.copier-answers.shared.yaml`\n  so updates stay reproducible.\n- 🧹 Cleanup tasks that remove older shared files like `.envrc`, legacy\n  Renovate config, and retired workflow names when the template is refreshed.\n- 🧩 A small prompt surface: project name, slug, author, email, license,\n  GitHub owner, and repository name.\n\n## 🚀 Use It\n\n```bash\ncopier copy --trust gh:liblaf/copier-shared .\n```\n\nCopier will ask for the project metadata it needs, then generate the shared\nfiles in your repository.\n\n## 📦 Generated Files\n\n| Path | Why it exists |\n| ---- | ------------- |\n| `.config/copier/.copier-answers.shared.yaml` | Saves the answers used to apply the template. |\n| `.config/rumdl.toml` | Keeps Markdown linting rules aligned across repos. |\n| `.pre-commit-config.yaml` | Installs the shared formatting, linting, and safety hooks. |\n| `.github/workflows/shared-copier-update.yaml` | Opens a weekly PR with the latest template changes. |\n| `.github/workflows/shared-mega-linter.yaml` | Runs MegaLinter and opens an autofix PR when possible. |\n| `.github/workflows/shared-review.yaml` | Runs scheduled review jobs for automation PRs. |\n\n## 🔄 Update An Existing Repo\n\nThe answers file is committed on purpose. To re-apply the template locally, run:\n\n```bash\ncopier recopy --trust --answers-file .config/copier/.copier-answers.shared.yaml\n```\n\nThe bundled `Shared / Copier Update` workflow follows the same approach on a weekly schedule and turns the result into a pull request.\n\n## 🛠️ Work On The Template\n\n```bash\ngit clone https://github.com/liblaf/copier-shared.git\ncd copier-shared\n```\n\n- 🧱 Edit `template/` when you want to change the files generated in downstream\n  repositories.\n- ⚙️ Edit `copier.yaml` when you want to change prompts, defaults, or cleanup\n  tasks.\n- 🧪 Re-run Copier against a scratch repository to verify the generated output\n  before publishing a new tag.\n\n## 🤝 Contributing\n\nIssues and pull requests are welcome. If you want to improve the shared\ndefaults, tighten automation, or simplify the update story, this repo is the\nright place to do it.\n\n---\n\n#### 📝 License\n\nCopyright © 2024 [liblaf](https://github.com/liblaf). \u003cbr /\u003e\nThis project is licensed under the [MIT License](./LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fliblaf%2Fcopier-shared","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fliblaf%2Fcopier-shared","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fliblaf%2Fcopier-shared/lists"}