Skip to content

Functions to parse a string and return an estimated reading time based on a lang rate

License

Notifications You must be signed in to change notification settings

untemps/read-per-minute

Repository files navigation

@untemps/read-per-minute

Class to parse a long text and return an estimated reading time based on a lang rate.

npm GitHub Workflow Status Codecov

Installation

yarn add @untemps/read-per-minute

Usage

Import the functions:

import { parse, isLangExist, rates } from '@untemps/read-per-minute'

Call parse with a string and a lang (see Override the value for a one-time parsing for an alternative usage):

parse('Long text', 'en')

The parse function returns an object with the following properties:

Property Description
time The estimated reading time in minutes
words The number of words in the text
rate The rate value used to calculate the reading time

Default Rates

Default rate values come from "How many words do we read per minute? A review and meta-analysis of reading rate" by Marc Brysbaert - Department of Experimental Psychology Ghent University

Lang Rate
default 200
ar 181
zh 260
nl 228
en 236
fi 195
fr 214
de 260
he 224
it 285
ko 226
es 278
sv 218

If the lang is not listed or is undefined, the default value will be used instead.

Custom Rates

Override all the values

You can specify an entire custom rates object as the third parameter of parse or isLangExist:

const customRates = {
	default: 220,
	ar: 191,
	zh: 255,
	nl: 234,
	en: 244,
}
parse('Long text', 'en', customRates)
isLangExist('en', customRates)

NOTE: Set a default property in the object if you want the parsing to fallback to a specific value. Otherwise, the static value will be used (rates.default).

Override the value for a one-time parsing

Simply pass the desired custom reading rate in words per minute instead of a language code:

// For very fast readers: 425 words per minute.
parse('Long text', 425)

NOTE: The custom reading rate must be greater than zero or the default value will be used.

About

Functions to parse a string and return an estimated reading time based on a lang rate

Topics

Resources

License

Stars

Watchers

Forks

Contributors 4

  •  
  •  
  •  
  •