Comments (3)
yes i think it does. gonna try it asap. i will let you know
from huma.
@jonathanyuechun there is an example that shows how to output the OpenAPI file at https://github.com/danielgtaylor/huma/blob/main/examples/spec-cmd/main.go#L68-L76. You can do something similar for the individual schemas if needed. For example, if I modify the command like this:
// Add a command to print the OpenAPI spec.
cli.Root().AddCommand(&cobra.Command{
Use: "openapi",
Short: "Print the OpenAPI spec",
Run: func(cmd *cobra.Command, args []string) {
b, _ := yaml.Marshal(api.OpenAPI())
fmt.Println(string(b))
// Also print the individual schemas.
for name, schema := range api.OpenAPI().Components.Schemas.Map() {
fmt.Printf("Schema: %s\n", name)
b, _ := yaml.Marshal(schema)
fmt.Println(string(b))
}
},
})
I can then run go run ./examples/spec-cmd openapi
and get output for the OpenAPI yaml and each individual JSON Schema as well. I'll leave it as an exercise to the reader to write them out into files 😄
Does that work for your use case?
from huma.
Closing as I think this is solved, but feel free to re-open if needed!
from huma.
Related Issues (20)
- Docs UI bug: mailto: with prefix `#/` HOT 1
- Docs UI bug: when setting contact with both email and url then email is not linked anywhere HOT 1
- [Question] Length validation sptits out unicode charactors. Is there any way to avoid that? HOT 1
- [Bug?]: Inconsistent schemas generation. HOT 2
- Question: How to influence huma response code and error from router specific middleware? HOT 1
- Bug? Hidden Body field is not recognized by validation
- Missed schema description on generation.
- `ErrorModel` schema improvements. HOT 3
- Question: Is is possible for field order in documentation to reflect struct field order? HOT 2
- 500 errors with "cannot read request body" HOT 2
- Enable global additional properties HOT 1
- Confusing documentation, possibly typo HOT 2
- Registering noop operations HOT 3
- huma panics on client context canceled HOT 4
- Validation with `discriminator.mapping` HOT 2
- Enum validation tag with comma in actual values HOT 3
- time.Time cannot validate using some specified format hints HOT 4
- OpenAPI spec does not support "null" type HOT 2
- Returning a response from Middleware HOT 2
- Best practice for middleware testing HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from huma.