Getting Started
The Collapsible plugin enhances Expressive Code blocks on your website by automatically collapsing long code blocks with expand/collapse controls, keeping your documentation clean and readable.
This guide will show you how to add it to your website.
Set-up
Section titled “Set-up”-
Install the
expressive-code-collapsibledependency using your preferred package manager:Terminal window npm i expressive-code-collapsibleTerminal window pnpm add expressive-code-collapsibleTerminal window yarn add expressive-code-collapsible -
Add the plugin to your site’s Expressive Code configuration:
astro.config.mjs import { defineConfig } from 'astro/config';import astroExpressiveCode from 'astro-expressive-code';import { pluginCollapsible } from 'expressive-code-collapsible';export default defineConfig({integrations: [astroExpressiveCode({plugins: [pluginCollapsible()],}),],});astro.config.mjs import { defineConfig } from 'astro/config';import starlight from '@astrojs/starlight';import { pluginCollapsible } from 'expressive-code-collapsible';export default defineConfig({integrations: [starlight({title: 'My Starlight site',expressiveCode: {plugins: [pluginCollapsible()],},}),],});next.config.mjs import createMDX from '@next/mdx';import rehypeExpressiveCode from 'rehype-expressive-code';import { pluginCollapsible } from 'expressive-code-collapsible';/** @type {import('rehype-expressive-code').RehypeExpressiveCodeOptions} */const rehypeExpressiveCodeOptions = {plugins: [pluginCollapsible()],};/** @type {import('next').NextConfig} */const nextConfig = {reactStrictMode: true,pageExtensions: ['js', 'jsx', 'ts', 'tsx', 'md', 'mdx'],};const withMDX = createMDX({extension: /\.mdx?$/,options: {remarkPlugins: [],rehypePlugins: [// The nested array structure is required to pass options// to a rehype plugin[rehypeExpressiveCode, rehypeExpressiveCodeOptions],],},});export default withMDX(nextConfig);ec.config.mjs import { pluginCollapsible } from 'expressive-code-collapsible';export default {plugins: [pluginCollapsible()],}; -
That’s it! The Collapsible plugin works out of the box with sensible defaults.
For more information on how to configure the plugin, see the Configuration page.
Support
Section titled “Support”This plugin is open-source software licensed under the MIT license. If you run into any bugs, please report issues on GitHub.