Internal Developer Portal
The Nu Skin internal developer portal is a NextJS Application built to provide documentation for it's home grown applications, APIs, SDKs, IaC projects, vendors, and developer centric documentation. All but the documentation portion of the application is backed byContentstack for it's headless CMS. The documentation portion uses Nextra.
The developer portal's chatbot calls a Lambda that uses the AWS SDK to interact with Amazon Bedrock. Inside of Bedrock I have a knowledge base set up as the RAG. Each night I have an AWS Lambda cron function that fetches the latest data from Contentstack, updates the knowledge base, and then initializes a sync on the knowledge base to ensure it has the latest data. Each night the developer portal pipeline also gets triggered each night so that the data in the application and RAG are in sync each day. From the chatbot users can ask things about what is in the developer portal, like "how many apis do we have?" or "who owns a particular API". Users can also ask for links to particular documents in the portal or for a certain API, SDK, application etc.
The pages with the table data, users can filter out the item at the top of the table by typing the name of the API, application etc., by owner, or technology. It's really fast an changes as the user types because it uses the useState React hook and updates the array of items quickly updating based on user input. There is also pagination built into the table so that users can decide how many items they want visible at a time.
If you go to an APIs individual page we render out the Open API Specification if one has been provided by the developer. The Open API Spec is fully functional with the ability to enter Authorization headers. We also pull the README and Changelog. This is a good view for all the information you might have for a particular code base.