# Customization Extend and customize your Redocly project with React components, API functions, custom styling, and advanced integrations. ## Development and integration React pages Create custom pages with React components for dynamic, interactive content and layouts. Page templates Create custom page layouts and templates for consistent design patterns. NPM libraries Import and use external NPM packages to add functionality to your project. Built-in components Use and extend Redocly's built-in React components in your custom pages and templates. Source maps Enable source maps for easier debugging of custom components and functions. ## Advanced components Custom Markdoc tags Build reusable Markdoc components to extend your content authoring capabilities. Markdoc variables Use variables to create dynamic, configurable content across your project. Attribute resolvers Transform and process Markdoc tag attributes with custom resolvers. Custom functions Create custom Markdoc functions for dynamic content generation and processing. ## Component customization Eject components Customize built-in components by ejecting and modifying them to fit your needs. Root layout Customize the root application layout for complete control over your project structure. ## Configuration Static assets Add static files to your project with predictable URLs that survive deployments. Theme static assets Add custom static assets to your theme for branding and functionality. Color mode images Display different images based on light or dark color mode preferences. Request values Configure custom request values for API documentation and interactive features. ## API integration API functions Build serverless functions to extend your project with custom APIs and data processing. ## Getting started with customization 1. **Start simple** - Create your first [React page](/docs/realm/customization/create-react-page) to understand the basics 2. **Use built-in components** - Learn to use [built-in components](/docs/realm/customization/react-components) in your pages 3. **Create components** - Build [custom Markdoc tags](/docs/realm/customization/build-markdoc-tags) for reusable content elements 4. **Advanced customization** - [Eject components](/docs/realm/customization/eject-components) for complete control over styling and behavior 5. **Add functionality** - Build [API functions](/docs/realm/customization/api-functions/create-api-functions) for server-side features ## Resources - **[API functions reference](/docs/realm/customization/api-functions/api-functions-reference)** - Complete guide to available serverless function capabilities for extending your project with custom APIs - **[Built-in components library](/docs/realm/customization/react-components/list)** - Browse and learn to use Redocly's built-in React components in your custom pages and templates - **[Component ejection tutorial](/docs/realm/customization/eject-components/eject-components-tutorial)** - Step-by-step hands-on guide to ejecting and customizing built-in components - **[Attribute resolvers guide](/docs/realm/customization/markdoc-attribute-resolvers)** - Advanced Markdoc customization using attribute resolvers for tag processing and transformation