Listen to DEV.to Articles

CastReader reads DEV.to (and other Forem-based community) articles aloud — the developer's own voice in your ears, without the reaction count and code distractions.

100% FreeWorks on Any Forem SiteCode Blocks Announced40+ Languages
dev.to / Ben Halpern · published
OpenWhy I stopped using React Context for everything
kevin-merge added labels `bug` `high-priority` · 3h ago
Kben-halperncommented 2h ago

I traced this to the token-bucket implementation the Redis INCR is not atomic with the expiry reset, so under heavy concurrency two requests can both believe they got the last token. Fixing it needs either a Lua script or a rewrite using INCRBY with a proper TTL guard.

rate-limiter.ts · 4 additions, 1 deletion
- await redis.incr(key);
+ await redis.eval(TOKEN_BUCKET_LUA, 1, key, now);
1.5x

Reads dev.to posts — skips reaction counts, code blocks, and comment thread

How CastReader Works with DEV.to

Built for long-form dev community reading

Article Body Only

🔊 Post Text, Not Metadata

DEV.to posts wrap the article body with reaction counts (❤️ 412 · 💬 38), reading time, author profile card, and tag chips. CastReader reads only the article prose — the metadata stays visible on screen.

Post body only

Code Blocks Handled

Fenced Code Announced, Inline `code` Read

DEV.to posts are code-heavy. CastReader announces fenced code blocks ('TypeScript example, N lines') and skips the content. Single-backtick inline code reads as normal text — 'useContext' reads as 'use context'.

Code handling

Comment Section Skipped

Post First, Comments on Demand

DEV.to comment threads are sometimes better than the post. CastReader reads the post first and puts per-comment Listen buttons on comment threads below. Click the ones worth hearing — no forced stream through all of them.

Comment section

Forem-Based Sites

Also: Forem Instances Beyond DEV.to

DEV.to is built on the open-source Forem platform, used by other dev communities (e.g. CodeNewbie, Hashnode-hosted sites with similar structure). CastReader's extractor generally works across Forem-based communities.

Forem support

Frequently Asked Questions

Everything you need to know about listening to DEV.to with CastReader

Does DEV.to have a built-in read-aloud feature?

No. CastReader adds one for free on every post.

Does it work on Forem communities beyond DEV.to?

Yes, generally. The Forem HTML structure is consistent across instances, so CastReader's DEV.to extractor works on most Forem-based sites.

Does it read tags?

By default tags are skipped — they're metadata, not content. You can toggle this in settings to announce tags at the start of each article if you want topical context.

Does it read embedded tweets, Codepens, or videos?

No. Embedded widgets (tweets, Codepen, YouTube, Gists) are skipped. The surrounding explanation text reads normally. You can still interact with the embeds manually when you want.

Is it free?

Completely free. No API key, no usage limits, no account required.

Start Listening Now

Completely free. Install and start listening to DEV.to.