\u00a0<\/span><\/p>\n\u00a0<\/span><\/p>\nTranscript<\/span>\u00a0<\/span><\/p>\n Speaker 2<\/span><\/p>\nThis is the Cherryleaf podcast.<\/span>\u00a0<\/span><\/p>\n Speaker 3<\/span>\u00a0<\/span><\/p>\nHi everybody, welcome to the Cherryleaf podcast. I’m Ginny Critcher and I will be talking to Ellis Pratt today. He’s going to talk a little bit about our experience using Redocly on a recent project.<\/span>\u00a0<\/span><\/p>\nOh maybe y<\/span>ou’d like to start off by giving us the background.<\/span>\u00a0<\/span><\/p>\n Speaker 1<\/span>\u00a0<\/span><\/p>\nYeah, we did a project recently. A documentation project in house for a startup in America and they decided they were going to use Redocly as the platform for creating their developer portal.<\/span><\/p>\nAnd Redocly is a fairly new p<\/span>latform, the developer portal bit of it is still in officially in beta.<\/span>\u00a0<\/span><\/p>\nIt’s getting more attention in recent times. It’s the first time we’ve used it, so I thought it might be useful to talk about our experiences with it. When we came in was that there was a startup.<\/span>\u00a0<\/span><\/p>\nAnd they had a product piece of software where it could be used using a Python client and they were going to be developing a Rest API so that clients their customers could use it in that way, so that meant they needed documentation for the rest API.<\/span>\u00a0<\/span><\/p>\nAnd they also weren’t happy with the contents that they had already, so they came across us. They did our quiz on What’s your developer portal KPI score? and emailed us to say<\/span>\u00a0<\/span><\/p>\nWe’re not doing very well and can you help? And so we were engaged to r<\/span>eorganise and restructure the content they already had.<\/span>\u00a0<\/span><\/p>\nWhich lots of it was just moving stuff around into a more logical place and making the English a bit clearer and having content relating to this new API and how they could use it. So the stuff about getting started and troubleshooting and and all of that.<\/span>\u00a0<\/span><\/p>\nThey decided to use Redocly as the platform for the developer portal.<\/span>\u00a0<\/span><\/p>\nSo that was going to be a docs section next to their websites and also to help them manage the process of creating the API in the OpenAPI definition file as well.<\/span>\u00a0<\/span><\/p>\nSo that’s sort of the background of why w<\/span>e we used it.<\/span>\u00a0<\/span><\/p>\n Speaker 3<\/span>\u00a0<\/span><\/p>\nYeah, perhaps you could outline for us what is Redoc and what is Redocly?<\/span>\u00a0<\/span><\/p>\n Speaker 1<\/span>\u00a0<\/span><\/p>\nSo, rather confusingly, if you’re not familiar with it, there’s one product called Redoc and one product called Redocly, and they’re both by the same company, but they do slightly different things.<\/span>\u00a0<\/span><\/p>\n <\/p>\n
Redoc is free, it’s open source, it’s it’s on GitHub and it’s been around for a while and you can use that if you’ve got an OpenAPI specification file or what’s known as the Swagger file. The thing that defines what bits of information they’re going to be shared via an API.<\/span>\u00a0<\/span><\/p>\n <\/p>\n
You can take it that Swagger file OpenAPI reference file you’ve created, specification file you’ve created<\/span>\u00a0<\/span><\/p>\n <\/p>\n
Run it through Redoc and what it will create is documentation API reference documentation so it’ll tell you the different methods and where they’re located and what the parameters are allowed. And so for generating b<\/span>asic API reference documentation. You can use it and it’s a popular tool for that.<\/span>\u00a0<\/span><\/p>\nAnd so what they’ve done off the back of the popularity of that is add e<\/span>xtra features and functionality to the reference documentation and the other stuff that you want when you’re creating the other documentatio a<\/span>nd made a product which you can pay for called Redocly.<\/span>\u00a0<\/span><\/p>\n <\/p>\n
And there are<\/span>\u00a0bits to Redocly around how API’s are created or the API lifecycle and older bigger companies rather than small ones.<\/span>\u00a0<\/span><\/p>\nSo it’s not going to what those bits are. Does that make sense?<\/span>\u00a0<\/span><\/p>\n Speaker 3<\/span>\u00a0<\/span><\/p>\nYeah, I think so. If you could expand on that that would be great. Can you tell me a little bit about what sort of documentation can you provide if you use Redocly?<\/span>\u00a0<\/span><\/p>\n Speaker 1<\/span>\u00a0<\/span><\/p>\nI can do let me start a little bit before that, so there are one of the things that Redocly can do is help a company create this Swagger file with this API OpenAPI definition file. So most the stuff that we’ve dealt with on projects there’s been like one API d<\/span>efinition file and we document that with larger companies and with more complex APIs.<\/span>\u00a0<\/span><\/p>\nWell then have that single file. They have multiple files that put together to make a definition file and what Redocly can do is help that complexity that’s involved with those more complex APIs. What happens in that situation is you have a master file or a main file.<\/span>\u00a0<\/span><\/p>\nSo we don’t use master anymore. We use a main or root file and that sets the locations of where these subsidiary files are and.<\/span>\u00a0<\/span><\/p>\nSo there’s a main structure, and then these ones, and then different people can work on these different areas. And in the case of this client though, we’re using a format for these subsidiary bits called gprc, which can make an API go faster.<\/span>\u00a0<\/span><\/p>\nWhich we didn’t particularly get involved with, but but they do that and what can happen is, is that as you’re building these different bits and making up that specification file, what reductively can do is check that all these different bits when they’re put t<\/span>ogether all are consistent and coherent and then validated because there’s a danger that one person will use one definition or one location, somebody else to use another, and then when you join them all together it falls over. So Redocly has got some tools for what it calls validating the files and then bundling them t<\/span>ogether so they make this single file a<\/span>nd to validate it, there’s what’s called linting, and that’s checking that the terminology and the links and all of that are consistent.<\/span>\u00a0<\/span><\/p>\nThey are correct, they follow a specific design standard or style so you can have like a single source of truth in order called dependencies or fit together more p<\/span>ut towards that.<\/span><\/p>\n Redoc also offers an extension if somebody is d<\/span>eveloping in Visual Studio<\/span> it can do that. To developing your code in that developer environment, so we didn’t really get involved in that bit.<\/span>\u00a0<\/span><\/p>\n <\/p>\n
Apart from going i<\/span>n and looking at some of the descriptions of these different methods.<\/span>\u00a0<\/span>\u00a0<\/span><\/p>\nAnd making sure they were clear and usual things, switching it from passive voice to active voice so it made it made it a little bit c<\/span>learer, it does that, and then what? It can also do like the Redoc is automatically generate reference content.<\/span>\u00a0<\/span><\/p>\n <\/p>\n
But what you’re giving? In addition, when you’re paying for Redocly over and above the free version is it will add in some extra bits, so we will add in a search.<\/span>\u00a0<\/span><\/p>\n <\/p>\n
It will allow you to have a v<\/span>ersion 1, version 2 and version 3 to switch between the different versions of the reference content.<\/span>\u00a0<\/span><\/p>\n <\/p>\n
You can have it without the Redocly labelling and branding. It’ll be faster. You can change the look and feel.<\/span>\u00a0<\/span><\/p>\n <\/p>\n
And you can also have code samples that it’ll automatically generate, so when you have a reference point for creating something, it can create a code sample in.<\/span>\u00a0<\/span><\/p>\n <\/p>\n
Uhm, let’s pick a language in Python. It can create a code sample in Ruby and that will be there in the reference documentation automatically for you as well.<\/span>\u00a0<\/span><\/p>\n <\/p>\n
And it’s faster. The way in which it generates the API reference documentation is quicker and faster than the free version.<\/span>\u00a0<\/span><\/p>\n Speaker 3<\/span>\u00a0<\/span><\/p>\nWhat k<\/span>ind of costs, are we looking at?<\/span>\u00a0<\/span><\/p>\n Speaker 1<\/span>\u00a0<\/span><\/p>\nSo those are two bits that we did and that was mainly done by the development team. There’s a third bit called in the actual creating of the developer portal itself, which is what we d<\/span>id but to answer your question directly, there’s different versions of a free version for private use. A professional version, which is pretty much what most people go for.<\/span>\u00a0<\/span><\/p>\nAnd then there’s a a fully customizable enterprise version where it’s you know, calling for pricing or callers progressing. So the cost for the professional version is 300 a month.<\/span>\u00a0<\/span><\/p>\n$300 a month, which is $3600 a year.<\/span>\u00a0<\/span><\/p>\nWhich, if you’re a technical author, sounds e<\/span>xpensive when people are struggling to try and get people to justify or get the budget to pay for an extra licence of Flare or RoboHelp.<\/span>\u00a0<\/span><\/p>\n <\/p>\n
That does sound like an awful lot of m<\/span>oney, but what you’re doing is you are using that to do this conversion process for the API.<\/span>\u00a0<\/span><\/p>\n <\/p>\n
And that’s generating that content for the people that are actually writing it all through the content. They’re doing that in a text editor.<\/span>\u00a0<\/span><\/p>\n <\/p>\n
They’re doing markdown pages, so if you have one author or 10 authors, you don’t need another version of reductively you still ha<\/span>ve that one version.<\/span>\u00a0<\/span><\/p>\n <\/p>\n
So if you think about the cost of <\/span>Help authoring tools and the fact that they are by user and the more offers you have, the more expensive it gets, then it that pricing starts to make sense.<\/span>\u00a0<\/span><\/p>\n <\/p>\n
There’s a third bit to Redocly, so if I go back to that so you can generate reference content, the documents you can use it to build your API specification file. If you’re a developer, what it can also do is that o<\/span>ther stuff that you want on a portal.<\/span>\u00a0<\/span><\/p>\n <\/p>\n
So if you just have API reference content, it’s not great to use if you don’t understand what it is. If it’s a reference for create an index or create a vector and you don’t explain what an index or a vector are, then you’re going to get stuck very quickly in using the API. So particularly this client they they had stuff, but it didn’t.<\/span>\u00a0<\/span><\/p>\n <\/p>\n
There wasn’t. They needed getting started. Information that was a lot clearer. They needed the concepts explained. It didn’t have a troubleshooting page. The process could be made clearer, so there’s a need to to add extra content to it.<\/span>\u00a0<\/span><\/p>\n <\/p>\n
So what you do is you write your content in markdown.<\/span>\u00a0<\/span><\/p>\nAnd you then p<\/span>ush those files up to a GitHub repository and what Redocly does is it converts those markdown files into web pages as a documentation portal.<\/span>\u00a0<\/span><\/p>\n <\/p>\n
And what you can do in addition with Redocly to markdown pages is you can also c<\/span>reate what are called MDX pages and then markdown pages where you can add some react JavaScript into it to make the page look a bit more jazzy.<\/span>\u00a0<\/span><\/p>\n Speaker 3<\/span>\u00a0<\/span><\/p>\nBut what did you like about it? What was good about it for you during this project?<\/span>\u00a0<\/span><\/p>\n <\/p>\n
It was interesting to use in we really were embedded in with the developers because the developers were writing the APIs in repositories on GitHub. The documentation was being written i<\/span>n repositories and GitHub the process for approving the code was the same as the process for approving the documentation and the developer portal side of things.<\/span>\u00a0<\/span><\/p>\n <\/p>\n
This was closely linked with the reference content that was being generated automatically. Now there is a feature that we talked to which we haven’t used or the client hasn’t implemented yet, which will be very interesting. One of those in the <\/span>Getting started guide and explanations and the overviews were some code samples of how to do things over and above what was in the reference stuff.<\/span>\u00a0<\/span><\/p>\n <\/p>\n
If something changed in the way they did the API, then we would have to go in and change the code samples or they’d have to tell us what the changes.<\/span>\u00a0<\/span><\/p>\n <\/p>\n
So the code samples were and go in and change that in the getting started guide or the overview because you can break down the API into these little files. 1 the capabilities that you’re m<\/span>eant to do with Redocly is also b<\/span>e able to embed.<\/span>\u00a0<\/span><\/p>\n <\/p>\n
Add those fragments of code into the user documentation as well, which means there’s the potential for the developers to change something in the API and automatically the code sample in the getting started guide changes also. So not only does the API reference bits automatically change t<\/span>he code sample there so does in the reference side and that would save a lot of time and effort as it changes.<\/span>\u00a0<\/span><\/p>\n <\/p>\n
Sometimes the welcome portals can be a little bit dull because markdown is limited in what you can and can’t do with how it looks and the ability to do these index files just give more scope for that, although the So what you can get with result please. You can use a template.<\/span>\u00a0<\/span><\/p>\n