swagger-api / swagger-api/swagger-codegen
Documentation of Approach to Code from JSON Schema and the IDL Vocab Proposal
Nobody has claimed this yet.
- Dominant language
- Mustache
- Stars
- 17.8k
- Forks
- 6k
- PR merge metrics
- No merged PRs in 30d
Description
Hello. We at JSON Schema are beginning to define a new vocabulary (currently per draft 2020-12, but maybe later depending on release schedules) that defines JSON-Schema-to-code strategies, including possibly some new keywords where the standard keyword set falls short for this task.
As a constraints based model, JSON Schema is not designed for model description, and therefore isn't ideal for code generation. However, that hasn't stopped people from using it that way. Our goal with this new vocabulary is to formalize the approach toward this task.
As a leader in the JSON Schema codegen arena, this project can be a significant contributor to this effort, guiding the development of the vocabulary to align with your current approach.
Questions:
- Is there any documentation on how this project translates particular JSON Schema constructs into code models?
- Would any members of this project like to be directly involved in the development of this new vocabulary?
Also, please feel free to come join the conversation in the JSON Schema Slack workspace.
Thank you.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
No file, test, or entry point is named. Start by reviewing the template-driven engine and its JSON Schema or OpenAPI parsing behavior, then document how schema constructs map to generated code models and record whether the project will participate in the proposed vocabulary.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- json
- Domain
- documentation
- Issue type
- Documentation
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100