Top stories from https://news.ycombinator.com (with 100+ score) Contribute to the development here: https://github.com/phil-r/hackernewsbot Also check https://t.me/designer_news Contacts: @philr
MCP doesn't need tools, it needs code (Score: 150+ in 7 hours)
Link: https://readhacker.news/s/6zU2J
Comments: https://readhacker.news/c/6zU2J
Electromechanical reshaping, an alternative to laser eye surgery (Score: 157+ in 7 hours)
Link: https://readhacker.news/s/6zTYU
Comments: https://readhacker.news/c/6zTYU
Show HN: I built an app to block Shorts and Reels (❄️ Score: 156+ in 2 days)
Link: https://readhacker.news/s/6zP7J
Comments: https://readhacker.news/c/6zP7J
I wanted to find a way to use Instagram without ending up scrolling for two hours every time I open the app to see a friend's story.
Most screen time apps I found focus on blocking the app itself instead of the addictive feed, so I created this app to allow me to keep using the "healthy" and "social" features and block the infinite scrolling (Reels)
After implementing the block on Instagram Reels, I got addicted to YouTube Shorts and Reddit feed. So, I extended the app to cover these as well.
To avoid replacing the scrolling for regular feeds, I also added a feature that shows a pop-up when I'm overscrolling in any app. It forces me to stop and think for a minute before I continue scrolling.
I built it on Android Studio, using Kotlin and Jetpack Compose for the UI. I use the Accessibility Service to detect scrolls and navigate out of them. Unfortunately, this only works for Android. There is no way (as far as I know) to do this on iOS.
I'd love to hear your thoughts
Clojure Async Flow Guide (Score: 150+ in 9 hours)
Link: https://readhacker.news/s/6zTc7
Comments: https://readhacker.news/c/6zTc7
A gigantic jet caught on camera: A spritacular moment for NASA astronaut (❄️ Score: 153+ in 3 days)
Link: https://readhacker.news/s/6zJk2
Comments: https://readhacker.news/c/6zJk2
Why Nim? (Score: 150+ in 19 hours)
Link: https://readhacker.news/s/6zRCH
Comments: https://readhacker.news/c/6zRCH
Show HN: Doxx – Terminal .docx viewer inspired by Glow (Score: 151+ in 11 hours)
Link: https://readhacker.news/s/6zSzR
Comments: https://readhacker.news/c/6zSzR
I got tired of open file.docx → wait 8 seconds → close Word just to read a document, so I built a terminal-native Word viewer!
What it does:
* View `.docx` files directly in your terminal with (mostly) proper formatting
* Tables actually look like tables (with Unicode borders!)
* Nested lists work correctly with indentation
* Full-text search with highlighting
* Copy content straight to clipboard with `c`
* Export to markdown/CSV/JSON
Why I made this:
Working on servers over SSH, I constantly hit Word docs I needed to check quickly. The existing solutions I'm aware of either strip all formatting (docx2txt) or require GUI apps. Wanted something that felt as polished as [glow](https://github.com/charmbracelet/glow) but for Word documents.
The good stuff:
* 50ms startup vs Word's 8+ seconds
* Works over SSH (obviously)
* Preserves document structure and formatting
* Smart table alignment based on data types
* Interactive outline view for long docs
Built with Rust + ratatui and heavily inspired by Charm's [glow](https://github.com/charmbracelet/glow) package for viewing Markdown in the CLI (built in Go)!
# Install
cargo install --git https://github.com/bgreenwell/doxx
# Use
doxx quarterly-report.docx
Who does your assistant serve? (Score: 150+ in 13 hours)
Link: https://readhacker.news/s/6zRSJ
Comments: https://readhacker.news/c/6zRSJ
Dyna – Logic Programming for Machine Learning (Score: 156+ in 1 day)
Link: https://readhacker.news/s/6zQ3q
Comments: https://readhacker.news/c/6zQ3q
HN Search isn't ingesting new data since Friday (Score: 150+ in 4 hours)
Link: https://readhacker.news/s/6zSC8
Comments: https://readhacker.news/c/6zSC8
Derivatives, Gradients, Jacobians and Hessians (Score: 151+ in 8 hours)
Link: https://readhacker.news/s/6zRHc
Comments: https://readhacker.news/c/6zRHc
Show HN: NextDNS Adds "Bypass Age Verification" (Score: 154+ in 8 hours)
Link: https://readhacker.news/c/6zRL2
We just shipped a new feature in NextDNS: Bypass Age Verification.
More and more sites (especially adult ones) are now forcing users to upload IDs or selfies to continue. We think that’s a terrible idea: handing over government documents to random sites is a huge privacy risk.
This new setting workarounds those verification flows via DNS tricks. It’s available today to all users, including free accounts.
We’re curious how the HN community feels about this. Is it the right way to protect privacy online, or will it just provoke regulators to push harder?
https://nextdns.io
IQ Tests Results for AI (Score: 150+ in 12 hours)
Link: https://readhacker.news/s/6zRfq
Comments: https://readhacker.news/c/6zRfq
When Did AI Take Over Hacker News? (🔥 Score: 150+ in 1 hour)
Link: https://readhacker.news/s/6zSyT
Comments: https://readhacker.news/c/6zSyT
Claudia – Desktop companion for Claude code (🔥 Score: 155+ in 3 hours)
Link: https://readhacker.news/s/6zSdz
Comments: https://readhacker.news/c/6zSdz
FFmpeg Assembly Language Lessons (🔥 Score: 156+ in 3 hours)
Link: https://readhacker.news/s/6zUwF
Comments: https://readhacker.news/c/6zUwF
SystemD Service Hardening (Score: 151+ in 10 hours)
Link: https://readhacker.news/s/6zTAg
Comments: https://readhacker.news/c/6zTAg
One person was able to claim 20M IPs (Score: 173+ in 1 day)
Link: https://readhacker.news/s/6zPLk
Comments: https://readhacker.news/c/6zPLk
Llama-Scan: Convert PDFs to Text W Local LLMs (Score: 151+ in 11 hours)
Link: https://readhacker.news/s/6zSPK
Comments: https://readhacker.news/c/6zSPK
Web apps in a single, portable, self-updating, vanilla HTML file (🔥 Score: 152+ in 2 hours)
Link: https://readhacker.news/s/6zTJ9
Comments: https://readhacker.news/c/6zTJ9
Google admits anti-competitive conduct involving Google Search in Australia (Score: 151+ in 4 hours)
Link: https://readhacker.news/s/6zTpt
Comments: https://readhacker.news/c/6zTpt
Faster Index I/O with NVMe SSDs (Score: 150+ in 16 hours)
Link: https://readhacker.news/s/6zRBS
Comments: https://readhacker.news/c/6zRBS
Review of Anti-Aging Drugs (Score: 151+ in 11 hours)
Link: https://readhacker.news/s/6zScV
Comments: https://readhacker.news/c/6zScV
A privacy VPN you can verify (❄️ Score: 150+ in 2 days)
Link: https://readhacker.news/s/6zMne
Comments: https://readhacker.news/c/6zMne
Show HN: OverType – A Markdown WYSIWYG editor that's just a textarea (Score: 153+ in 7 hours)
Link: https://readhacker.news/c/6zS2M
Hi HN! I got so frustrated with modern WYSIWYG editors that I started to play around with building my own.
The problem I had was simple: I wanted a low-tech way to type styled text, but I didn't want to load a complex 500KB library, especially if I was going to initialize it dozens of times on the same page.
Markdown in a plain <textarea> was the best alternative to a full WYSIWYG, but its main drawback is how ugly it looks without any formatting. I can handle it, but my clients certainly can't.
I went down the ContentEditable rabbit hole for a few years, but always came to realize others had solved it better than I ever could.
I kept coming back to this problem: why can't I have a simple, performant, beautiful markdown editor? The best solution I ever saw was Ghost's split-screen editor: markdown on the left, preview on the right, with synchronized scrolling.
Then, about a year ago, an idea popped into my head: what if we layered a preview pane behind a <textarea>? If we aligned them perfectly, then even though you were only editing plain text, it would look and feel like you were editing rich text!
Of course, there would be downsides: you'd have to use a monospace font, all content would have to have the same font size, and all the markdown markup would have to be displayed in the final preview.
But those were tradeoffs I could live with.
Anyways, version 1 didn't go so well... it turns out it's harder to keep a textarea and a rendered preview in alignment than I thought. Here's what I discovered:
- Lists were hard to align - bullet points threw off character alignment. Solved with HTML entities (• for bullets) that maintain monospace width
- Not all monospace fonts are truly monospace - bold and italic text can have different widths even in "monospace" fonts, breaking the perfect overlay
- Embedding was a nightmare - any inherited CSS from parent pages (margin, padding, line-height) would shift alignment. Even a 1px shift completely broke the illusion
The solution was obsessive normalization:
// The entire trick: a transparent textarea over a preview div
layerElements(textarea, preview)
applyIdenticalSpacing(textarea, preview)
// Make textarea invisible but keep the cursor
textarea.style.background = 'transparent'
textarea.style.color = 'transparent'
textarea.style.caretColor = 'black'
// Keep them in sync
textarea.addEventListener('input', () => {
preview.innerHTML = parseMarkdown(textarea.value)
syncScroll(textarea, preview)
})
The Enterprise Experience (Score: 157+ in 6 hours)
Link: https://readhacker.news/s/6zS8E
Comments: https://readhacker.news/c/6zS8E
Electricity prices are climbing more than twice as fast as inflation (Score: 152+ in 8 hours)
Link: https://readhacker.news/s/6zRJV
Comments: https://readhacker.news/c/6zRJV
AI doesn't lighten the burden of mastery (Score: 150+ in 4 hours)
Link: https://readhacker.news/s/6zSag
Comments: https://readhacker.news/c/6zSag
ArchiveTeam has finished archiving all goo.gl short links (🔥 Score: 151+ in 3 hours)
Link: https://readhacker.news/s/6zSgb
Comments: https://readhacker.news/c/6zSgb
Eliminating JavaScript cold starts on AWS Lambda (Score: 150+ in 1 day)
Link: https://readhacker.news/s/6zNKr
Comments: https://readhacker.news/c/6zNKr