BACK TO DIRECTORY

Nuvora Reading Time & Progress Bar

by Sehrish Anam

5.0
(1 ratings)

Nuvora Reading Time & Progress Bar is a lightweight, developer-friendly plugin that adds two things readers love:

  1. A reading time badge — shown before/after your post content.
  2. A scroll progress bar — a sleek bar at the top (or bottom) of the screen that fills as the reader scrolls.

✨ What makes it different?

AI-assisted reading time adjustment
Posts with lots of headings, bullet lists, and short paragraphs are scanned faster by readers. The plugin detects structure in your content and intelligently reduces the estimate — labelled “AI-adjusted” so readers know.

Per-post overrides via meta box
Override the calculated reading time for any post. Hide the badge or progress bar per-post, right from the editor.

Accessibility-first design
– Semantic role="progressbar" with live aria-valuenow updates
– Meaningful aria-label on every element
– Keyboard-focusable progress bar
– Fully respects prefers-reduced-motion
– Screen-reader-friendly badge with word count in ARIA label

Minimal & performant
– No jQuery dependency (vanilla JS)
– No external assets, fonts, or CDN calls
– No database writes beyond settings
– No user tracking whatsoever
– ~1.5 KB JS / ~1.2 KB CSS (gzipped)

Elementor Widget included
– Drag and drop the Reading Time widget directly in Elementor
– Full widget controls for badge display and styling
– Works seamlessly with Elementor’s responsive settings

Developer-friendly
– Template tags: rte_the_reading_time(), rte_get_reading_time()
– Filters: rte_badge_html, rte_show_badge, rte_ai_adjustment_factor
– CJK (Chinese/Japanese/Korean) content support
– Per-post type configuration

📐 Settings

  • Custom WPM (words per minute) — default 238
  • Enable/disable AI-assisted adjustment
  • Badge position: before content, after content, or both
  • Choose which post types show the badge and/or progress bar
  • Customise badge label text (use {time} placeholder)
  • Pick progress bar color, height (1–10 px), position (top/bottom)
  • Optional percentage tooltip on hover
  • Respect prefers-reduced-motion toggle

🔧 Template Tags

Use in your theme:

<?php rte_the_reading_time(); // echoes "5 min read" ?>

<?php $data = rte_get_reading_time(); echo $data['minutes']; ?>

🪝 Filters

Customise badge HTML:
add_filter( ‘rte_badge_html’, function( $html, $result ) { return $html; }, 10, 2 );

Disable badge conditionally:
add_filter( ‘rte_show_badge’, ‘__return_false’ );

Tweak AI adjustment factor (0.75–1.0):
add_filter( ‘rte_ai_adjustment_factor’, function( $factor, $html ) { return 0.85; }, 10, 2 );

Screenshots

Main Plugin Image

Main Plugin Image

Main Plugin Settings

Main Plugin Settings

Front-end: Scroll progress bar at bottom of screen and reading time badge below post title

Front-end: Scroll progress bar at bottom of screen and reading time badge below post title

Elementor Widget with its settings

Elementor Widget with its settings

Front-end: Elementor widget view in the middle of post

Front-end: Elementor widget view in the middle of post

Plugin Details

Active Installs
0
Total Downloads
488
Version
1.0.0
Requires WP
5.9
Requires PHP
8.0
Tested Up To
6.9.7
Added
2026-02-23
Last Updated
2026-02-24 5:32am GMT

Ratings

5
1
4
0
3
0
2
0
1
0