Get quick and easy readability and other metrics for your texts right on the command line with textstat, offering more insights than wc and LLM token count.
There's another project on PyPI textstat-cli made by another person, I tried that one before making this. Sadly that one doesn't run on my machine, so I made this one.
# Using the tool on my latest blog post at https://teddysc.me/blog/raleigh-menswear-stores-review
$ textstat-cli teddysc.me/data/blog/raleigh-menswear-stores-review.mdx
Metric Value
---------------------------- ------------------
flesch_reading_ease 67.65
flesch_kincaid_grade 6.8
smog_index 8.7
coleman_liau_index 13.38
automated_readability_index 13.7
dale_chall_readability_score 8.12
difficult_words 111
linsear_write_formula 4.7272727272727275
gunning_fog 6.1
text_standard 8th and 9th grade
fernandez_huerta 104.5
szigriszt_pazos 102.97
gutierrez_polini 38.19
crawford 2.1
gulpease_index 52.1
osman 35.41
spache_readability 3.66
mcalpine_eflaw 16.4
reading_time 77.86
syllable_count 1264
lexicon_count 858
sentence_count 71
char_count 5300
letter_count 4669
Explanation of the metircs can be found at https://github.com/textstat/textstat
Please note that some of these metrics are not meant for English texts.
- Lots of metrics, see demo above.
- 3 output formats, table by tabulate (see demo), plain text, or JSON.
Requires Python>=3.10, <3.12 (textstat requires pkg_resources, which is not available in Python 3.12).
This is the recommended installation method.
$ pipx install textstat-cli-tddschn
$ pip install textstat-cli-tddschn
$ textstat-cli --help
usage: textstat-cli [-h] [-j] [-T] FILE
TextStat (https://github.com/textstat/textstat) CLI
positional arguments:
FILE Input file
options:
-h, --help show this help message and exit
-j, --json Output in JSON format (default: False)
-T, --no-tabulate Do not output in tabulated format (default: False)
$ git clone https://github.com/tddschn/textstat-cli-tddschn.git
$ cd textstat-cli-tddschn
$ poetry install