Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/web-infra-dev/codesmith
Micro generator for development life-cycle.
https://github.com/web-infra-dev/codesmith
generator
Last synced: about 18 hours ago
JSON representation
Micro generator for development life-cycle.
- Host: GitHub
- URL: https://github.com/web-infra-dev/codesmith
- Owner: web-infra-dev
- License: mit
- Created: 2021-07-21T03:38:52.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2024-11-01T07:06:15.000Z (13 days ago)
- Last Synced: 2024-11-10T19:20:01.416Z (4 days ago)
- Topics: generator
- Language: TypeScript
- Homepage:
- Size: 976 KB
- Stars: 23
- Watchers: 3
- Forks: 8
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
CodeSmith
A cool code generation tool.
English | [简体中文](./README.zh-CN.md)
## Introduce
CodeSmith is a code generation tool that uses the concept of micro-generators to complete the entire code generation process.
Traditional 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.
Micro-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.
[`@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&A process.
The 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.
## Document
- [Quick Start](./document/en/start.md)
- [Concepts](./document/en/concept.md)
- [API](./document/en/api/index.md)## Contributing
> New contributors welcome!
Please read the [Contributing Guide](https://github.com/web-infra-dev/codesmith/blob/main/CONTRIBUTING.md).
### Code of Conduct
This repo has adopted the Bytedance Open Source Code of Conduct. Please check [Code of Conduct](./CODE_OF_CONDUCT.md) for more details.
## License
Modern.js is [MIT licensed](https://github.com/web-infra-dev/codesmith/blob/main/LICENSE).