Customization
Page layout consists of special blocks. For additional customization, you may use special utilities.
All styles are collected separately and are included once for the entire application from robindoc/lib/styles.css
:
import { RobinProvider, Header, Footer, DocsContainer } from "robindoc";
import { Page, Sidebar } from "./robindoc";
import "robindoc/lib/styles.css";
const DocumentationPage: React.FC = () => (
<RobinProvider>
<Header logo={<Logo />} />
<DocsContainer>
<Sidebar pathname="/docs" />
<Page pathname="/docs" />
</DocsContainer>
<Footer copyright="© 2024 All rights reserved" />
</RobinProvider>
);
export default DocumentationPage;
import { RobinProvider, Header, Footer, DocsContainer } from "robindoc";
import { Page, Sidebar } from "./robindoc";
import "robindoc/lib/styles.css";
const DocumentationPage = () => (
<RobinProvider>
<Header logo={<Logo />} />
<DocsContainer>
<Sidebar pathname="/docs" />
<Page pathname="/docs" />
</DocsContainer>
<Footer copyright="© 2024 All rights reserved" />
</RobinProvider>
);
export default DocumentationPage;
Framework-based logic configuration - search API route, and the current page path - is up to you. For more details, read the App Organization page.
Robindoc works entirely does not require any modifications to the bundler. The framework is fully built on the capabilities of RSC, allowing you to build documentation as a static site or generate pages dynamically.
As a result, Robindoc does not affect other pages of the service. Essentially, these are just regular components that build large blocks based on markdown files and instructions. Conversely, you can easily integrate Robindoc into any site that supports RSC.
Despite the bundler-free generation, Robindoc supports markup (both through jsx/html inside md/mdx files and through special Robin components). For more details, read the Writing MD page.