I Built a Browser Text-to-Speech Tool Because I Hate Reading Long Documents
I spend a lot of time reading things I don't necessarily want to read.
Documentation. Articles. Research. PDFs. Notes.
The annoying part isn't always the information itself.
Sometimes I just don't want to stare at a screen for another hour.
So I started building something around that problem.
The idea
I wanted a really simple workflow:
- Paste some text or upload a PDF.
- Press play.
- Listen while following the text.
- Keep working without having to constantly read the screen.
That became Listeny.
The interesting part for me wasn't simply converting text to speech. Browsers can already do that.
I wanted the reading experience to feel more natural.
While the audio is playing, the words being spoken are highlighted so you can follow along.
That creates a nice middle ground between reading and listening.
Why build this instead of using an existing tool?
There are already plenty of text-to-speech products.
That was actually one of the reasons I wanted to build my own.
I wanted to understand the engineering problems behind a seemingly simple feature.
Text-to-speech sounds easy until you start thinking about everything that happens around it.
What happens when the user changes the playback speed?
What happens when they pause?
How do you know which word is currently being spoken?
What happens when the browser tab becomes inactive?
How do you keep the highlighted text synchronized with the audio?
How should PDFs be handled?
How do you make the interface useful without turning it into another complicated productivity dashboard?
Those small details ended up being more interesting than I expected.
The interface
This is what the current version looks like:
[ADD YOUR LISTENY DASHBOARD SCREENSHOT HERE]
I'm deliberately trying to keep the interface simple.
There are enough productivity apps that require five minutes of configuration before you can actually use them.
I wanted this to be closer to:
Paste → Play → Listen.
One thing I'm still figuring out
I'm not completely convinced I've got the interface right yet.
That's the part I'm most interested in getting feedback on.
If you were using a tool like this:
- Would you want more voice controls?
- Would you use it mainly for articles, PDFs, documentation or studying?
- Is word-by-word highlighting useful or distracting?
- What would make you choose this over the built-in text-to-speech features on your device?
- What is the first feature you would add?
I'm much more interested in hearing what is missing than hearing that everything looks good.
What I'm learning from building small tools
This project has also changed how I think about building web apps.
A feature can be technically impressive and still be annoying to use.
The hard part isn't always adding functionality.
Sometimes it's deciding what not to add.
That's something I'm trying to get better at.
Build the smallest useful version.
Put it in front of people.
Listen.
Remove things that don't help.
Then build again.
That's where Listeny is right now.
If you want to try the current version, it's available at https://listney.com.
And if you're a developer who has built anything involving browser speech APIs, I'd especially love to hear how you approached synchronization, playback state, and text highlighting.
Top comments (0)