{"id":20156205,"url":"https://github.com/web-infra-dev/codesmith","last_synced_at":"2026-01-28T09:21:27.666Z","repository":{"id":38314741,"uuid":"387983383","full_name":"web-infra-dev/codesmith","owner":"web-infra-dev","description":"Micro generator for development life-cycle.","archived":false,"fork":false,"pushed_at":"2025-03-13T07:19:36.000Z","size":1222,"stargazers_count":26,"open_issues_count":0,"forks_count":7,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-30T14:11:16.991Z","etag":null,"topics":["generator"],"latest_commit_sha":null,"homepage":"","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/web-infra-dev.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","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}},"created_at":"2021-07-21T03:38:52.000Z","updated_at":"2025-03-13T07:19:39.000Z","dependencies_parsed_at":"2023-01-30T03:00:37.025Z","dependency_job_id":"866b2d15-a7a4-4b44-ae05-7067ed79440d","html_url":"https://github.com/web-infra-dev/codesmith","commit_stats":{"total_commits":125,"total_committers":7,"mean_commits":"17.857142857142858","dds":"0.31999999999999995","last_synced_commit":"780a6cbe05dc9f4a43539e7ad04efaaf5babbf8c"},"previous_names":["modern-js-dev/codesmith"],"tags_count":141,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/web-infra-dev%2Fcodesmith","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/web-infra-dev%2Fcodesmith/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/web-infra-dev%2Fcodesmith/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/web-infra-dev%2Fcodesmith/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/web-infra-dev","download_url":"https://codeload.github.com/web-infra-dev/codesmith/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247500468,"owners_count":20948880,"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":["generator"],"created_at":"2024-11-13T23:37:58.330Z","updated_at":"2026-01-28T09:21:27.637Z","avatar_url":"https://github.com/web-infra-dev.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://modernjs.dev\" target=\"blank\"\u003e\u003cimg src=\"https://lf3-static.bytednsdoc.com/obj/eden-cn/ylaelkeh7nuhfnuhf/modernjs-cover.png\" width=\"260\" alt=\"Modern.js Logo\" /\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\u003ch1 align=\"center\"\u003eCodeSmith\u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\n  A cool code generation tool.\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://img.shields.io/npm/v/@modern-js/codesmith?style=flat-square\u0026color=00a8f0\" alt=\"npm version\" /\u003e\n  \u003cimg src=\"https://img.shields.io/npm/dm/@modern-js/codesmith.svg?style=flat-square\u0026color=00a8f0\" alt=\"downloads\" /\u003e\n  \u003cimg src=\"https://img.shields.io/npm/l/@modern-js/codesmith?style=flat-square\u0026color=00a8f0\" alt=\"License\" /\u003e\n\u003c/p\u003e\n\nEnglish | [简体中文](./README.zh-CN.md)\n\n## Introduce\n\nCodeSmith is a code generation tool that uses the concept of micro-generators to complete the entire code generation process.\n\nTraditional scaffolding usually provides project-level generators based on templates, which are used once and then discarded. After generating the project, they do not help with subsequent business iterations.\n\nMicro-generators focus on the entire lifecycle of the project. They can generate file modules of various granularities and types in the project (such as entry, component, model, etc.), and can also generate abstract business logic (which may not create new files, but automatically refactor existing files). Micro-generators are not one-time tools used only when creating projects, but a toolbox that accompanies the project's subsequent iterative process.\n\n[`@modern-js/create`](https://www.npmjs.com/package/@modern-js/create) is based on CodeSmith and dynamically generates different initial files and codes or modifies and restructures existing files and codes based on different micro-generators loaded on demand during the Q\u0026A process.\n\nThe new command provided by Modern.js is also based on CodeSmith and is used to create project elements and enable functions during the project development process.\n\n## Document\n\n- [Quick Start](./document/en/start.md)\n- [Concepts](./document/en/concept.md)\n- [API](./document/en/api/index.md)\n\n## Contributing\n\n\u003e New contributors welcome!\n\nPlease read the [Contributing Guide](https://github.com/web-infra-dev/codesmith/blob/main/CONTRIBUTING.md).\n\n### Code of Conduct\n\nThis repo has adopted the Bytedance Open Source Code of Conduct. Please check [Code of Conduct](./CODE_OF_CONDUCT.md) for more details.\n\n## License\n\nModern.js is [MIT licensed](https://github.com/web-infra-dev/codesmith/blob/main/LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fweb-infra-dev%2Fcodesmith","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fweb-infra-dev%2Fcodesmith","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fweb-infra-dev%2Fcodesmith/lists"}