← PluginsAvailable

Reading Time

Honest read-time estimates for long posts.

Show "5 min read" badges on EmDash posts, with configurable reading speed and counting rules, manual overrides and three badge styles.

Features

  • Configurable speed

    200 words per minute by default.

  • Counting rules

    Include headings or captions; skip code.

  • Manual overrides

    Set the minutes or label per post.

  • Three styles

    Compact, inline and pill badges.

Reading Time estimates how long a post takes to read and shows it as a small badge. You choose the reading speed and what counts: headings in, captions out and code blocks skipped, by default.

When the estimate is wrong

Editors can override the minutes or the label on any post, and you can choose how very short posts are handled.

Install

pnpm add @masonjames/emdash-plugin-reading-time

// astro.config.mjs
import { defineConfig } from "astro/config";
import emdash from "emdash/astro";
import { readingTimePlugin } from "@masonjames/emdash-plugin-reading-time";

export default defineConfig({
  integrations: [
    emdash({ plugins: [readingTimePlugin()] }),
  ],
});

Questions

Where does the badge appear?

Wherever your theme places the component, or where an editor inserts the block. Use one or the other so a post doesn't show two badges.

More EmDash plugins

All plugins →