On this page

Every shortcode you can use in a blog post or any other MDX file, each with the code that produces it. The list lives in src/lib/shortcodes.ts.

Callout


Pull a tip or a warning out of the text. type is note (default), tip, warning, or danger. Without a title, the type name is shown.

jsx
<Callout type="tip" title="Find the shut-off valve first">
  Before you touch a tap or a toilet, turn off the small valve under it and
  check that the water has stopped.
</Callout>

Note

A running toilet usually needs a new flapper, not a new toilet. The part costs a few dollars.

Find the shut-off valve first

Before you touch a tap or a toilet, turn off the small valve under it and check that the water has stopped.

Warning

Never pour a chemical drain opener into a drain that is fully blocked. It sits in the pipe and can damage old joints.

Turn off the power and the gas first

Before you drain a water heater, switch off the breaker or set the gas valve to pilot. A dry element burns out in seconds.

<Notice> still works and renders the same callout: info → note, success → tip, warning → warning, error → danger.

Steps


Wrap headings in <Steps> to number them. Each ## or ### heading starts a step, and everything below it belongs to that step.

md
<Steps>

### Shut off the water

Turn the valve under the sink clockwise until it stops, then open the tap to release the pressure.

### Replace the cartridge

Pull the handle, unscrew the retaining nut, and take the old cartridge to the shop to match it.

### Test for leaks

Turn the water back on slowly and hold a dry paper towel under each joint for a minute.

</Steps>

Shut off the water

Turn the valve under the sink clockwise until it stops, then open the tap to release the pressure.

Replace the cartridge

Pull the handle, unscrew the retaining nut, and take the old cartridge to the shop to match it.

Test for leaks

Turn the water back on slowly and hold a dry paper towel under each joint for a minute.

Checklist


<ListCheck> turns a Markdown list into a checklist. Add columns={2} for two columns on wider screens.

md
<ListCheck columns={2}>

- **Water heater**: anode rod checked, tank flushed.
- **Shut-off valves**: each one turned and checked for drips.
- **Drains**: P-traps cleared, flow tested.
- **Toilets**: flapper, fill valve, and wax ring seal.

</ListCheck>
  • Water heater: anode rod checked, tank flushed.
  • Shut-off valves: each one turned and checked for drips.
  • Drains: P-traps cleared, flow tested.
  • Toilets: flapper, fill valve, and wax ring seal.

Job ticket


<JobTicket> shows a checklist as a job ticket. Each list item becomes a checked row. total is free text; with service and no total, the ticket shows that service’s “from” price from the rate card, and a “Get a price” button opens the estimator with the service selected.

md
<JobTicket title="Before the plumber arrives" code="TIP-021" label="Drain call" service="drain-cleaning">

- Empty the cabinet under the sink
- Find the main shut-off valve
- Leave a key or a door code

</JobTicket>

No. TIP-021

Drain call

Before the plumber arrives

  • Empty the cabinet under the sink
  • Find the main shut-off valve
  • Leave a key or a door code

From$129

Price band


<PriceCta> is the line that ends every blog post: the service’s “from” price and a button to the estimator. Blog posts show it on their own from the service field in the front matter; use the shortcode on other pages.

jsx
<PriceCta service="water-heater-repair" />

Button


jsx
<Button label="Book a plumber" url="/book/" />
<Button variant="outline" label="Call us" url="/contact/" />
<Button variant="text" label="See all services" url="/services/" />
Book a plumber Call us See all services

Accordion


Rows with the same group close each other. expanded="true" opens a row on load.

md
<Accordion label="Does someone have to be in during the visit?" group="visit" expanded="true">

Someone should approve the written price. After that, leave a key or a door code and we text you photos when we leave.

</Accordion>
Does someone have to be in during the visit?

Someone should approve the written price. After that, leave a key or a door code and we text you photos when we leave.

Do you bring the parts?

Yes: the van carries common valves, cartridges, traps, and supply lines. Anything else we order and tell you the cost first.

What if the repair fails?

Tell us and we come back and fix it free under the one-year labour warranty.

Tabs


jsx
<Tabs>
  <Tab name="Kitchen">
    Check the supply lines, tighten the P-trap, test the dishwasher drain hose.
  </Tab>
  <Tab name="Bathroom">
    Replace the toilet flapper, reseal the tub spout, check the shower valve for
    drips.
  </Tab>
</Tabs>

Check the supply lines, tighten the P-trap, and test the dishwasher drain hose.

Image list


Photos in a grid, with an optional caption under each. width="1/2" or "1/3" sets the share of the row; videoSrc adds a play button.

jsx
<ImageList>
  <ImageItem
    imageSrc="/images/blog/frozen-pipes.jpg"
    imageAlt="Icicles on an outdoor pipe"
    caption="Hold the fitting while you turn the nut."
  />
  <ImageItem
    width="1/2"
    imageSrc="/images/blog/slow-drain.jpg"
    imageAlt="Water draining from a white basin"
    caption="A slow drip behind the tile shows here first."
  />
  <ImageItem
    width="1/2"
    imageSrc="/images/blog/leak-signs.jpg"
    imageAlt="Water meters on supply pipes"
    caption="Check under the sink once a month."
  />
</ImageList>
Icicles on an outdoor pipe
Hold the fitting while you turn the nut.
Water draining from a white basin
A slow drip behind the tile shows here first.
Water meters on supply pipes
Check under the sink once a month.

Video


jsx
<VideoInline src="rFVpSwgCkCo" provider="youtube" />
<VideoInline src="/videos/test-video.mp4" provider="html5" poster="/images/heroes/plumber-kitchen-sink-wide.jpg" />

Text


Bold with **, italic with _, struck through with ~~, and inline code with backticks. Links use [text](/url/): our services.

A blockquote starts with >. Use it for a short quote from a customer or a plumber.

JobTimePlumbers
Water heater swap3 h2
Toilet repair1 h1
Tap cartridge45 min1

txt
## Heading 2 [.custom-class]
### Heading 3

Add classes to a heading in brackets, for example [.h5] for a smaller size.

Close-up of copper pipe joints

Buy NowTheme Details