Comments (9)
Just added a fix in #78 to allow passing both spec
and specUrl
, that way you can have the download button pointed to a yaml in static folder while still having parsed yaml for faster loading of page.
Will be out in next release
from redocusaurus.
Currently the yaml is read during the build process, converted to JSON and passed to Redoc. If you want to pass the raw yaml, better to put it in the static folder and pass a URL to it in the plugin options.
from redocusaurus.
@rohit-gohri Thanks for the feedback. I already put the file into the static folder.
How would be the best / recommended way to pass the URL to the plugin? Is there an example. I see that redoc itself seems to have options downloadLink and downloadFileName but I am not 100% sure how to use those.
from redocusaurus.
@rohit-gohri OK, if I provide a specUrl it works as intended. However, how can I set the spec URL correctly in the docusaurus.config.js
file as the hostname etc. is not yet defined and just using /path/to/spec.yaml
does not work as it fails with an invalid URI error.
from redocusaurus.
The recommended way by me would be to use the converted JSON as that is the fastest to load as no parsing needs to happen on client side.
If you want to allow downloading YAML and are okay with a little loading time, then put the the yaml in the static folder and pass the relative path in the specUrl
option. Like here:
redocusaurus/example/docusaurus.config.js
Lines 18 to 21 in 55649a0
from redocusaurus.
(after you update to the latest version, just released a patch which allows for relative paths in urls)
from redocusaurus.
@rohit-gohri Thanks for adding support of this so fast.
So if I have a fix base URL, something like this ${BASE_URL}/path/to/static/openapi.yaml
would be fine.
At least it works locally. Haven't deployed it ye but should work there too.
from redocusaurus.
So if I have a fix base URL, something like this
${BASE_URL}/path/to/static/openapi.yaml
would be fine.
Yup, ideally I should be using the useBaseUrl hook in the Redoc component to automatically add it. But for now this works, maybe a fix for later.
from redocusaurus.
Just to be curious - the default name of the download file is swagger.json
any chance to change the filename?
from redocusaurus.
Related Issues (20)
- Extend deploy script to sign git commits. HOT 1
- [ERROR] TypeError: Cannot set properties of undefined (setting 'minItems') HOT 9
- CSS broken HOT 1
- Callbacks lack proper background in dark mode HOT 1
- Is there a way to run the APIs through the redoc component ? HOT 1
- Support for Docusaurus 3.0 HOT 9
- Example not hidden for schema imports
- Redocusaurus should collect heading ids / anchors HOT 2
- Webpack missing in Peer Dependencies HOT 1
- Error: Docusaurus server-side rendering could not render static page with path /api/ because of error: slugify: string argument expected HOT 2
- Issue with calling useColorMode outside the ColorModeProvider for Docusaurus 3.0.1 HOT 5
- Logo from spec (x-logo) not being rendered. HOT 3
- Add warning for deprecated options and remove them in next breaking version
- Generate code samples
- Support versioning API along with docs HOT 1
- API Reference page on mobile device HOT 2
- Footer UI defect
- Sidebar scrolls under navbar on direct visit HOT 2
- Standalone redoc plugin HOT 3
- Sidebar scroll not working properly with offset
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 redocusaurus.