Code Block

A component for displaying code snippets with syntax highlighting and copy functionality.

In this guide, you'll learn how to use the Code Block component.

Was this example helpful?

Usage#

Code
import { CodeBlock } from "@medusajs/ui"
Code
1<CodeBlock 2  snippets={[3    { 4      language: "tsx", 5      label: "Label", 6      code: "import { useProduct } from \"medusa-react\"",7    },8  ]}9>10  <CodeBlock.Header />11  <CodeBlock.Body />12</CodeBlock>

API Reference#


Usage Outside Medusa Admin#

If you're using the CodeBlock component in a project other than the Medusa Admin, make sure to include the TooltipProvider somewhere up in your component tree, as the CodeBlock.Header component uses a Tooltip:

Code
1<TooltipProvider>2  <CodeBlock 3    snippets={[4      { 5        language: "tsx", 6        label: "Label", 7        code: "import { useProduct } from \"medusa-react\"",8      },9    ]}10  >11    <CodeBlock.Header />12    <CodeBlock.Body />13  </CodeBlock>14</TooltipProvider>

Examples#

Single Snippet#

If you want to only show a code sample for one language or API, you can choose to hide the snippet labels:

Was this example helpful?

No Header#

You can also omit the header entirely:

Was this example helpful?

No Line Numbers#

Was this example helpful?

No Copy Button#

Was this guide helpful?
Ask Bloom
For assistance in your development, use Claude Code Plugins or Docs MCP server in Cursor, VSCode, etc...FAQ
What is Medusa?
How can I create a module?
How can I create a data model?
How do I create a workflow?
How can I extend a data model in the Product Module?
Recipes
How do I build a marketplace with Medusa?
How do I build digital products with Medusa?
How do I build subscription-based purchases with Medusa?
What other recipes are available in the Medusa documentation?
Chat is cleared on refresh
Line break
⇧↵