The topic A Dash of dev.to: My Blog Stats Now Live in the Terminal is currently the subject of lively discussion — readers and analysts are keeping a close eye on developments.
This is taking place in a dynamic environment: companies’ decisions and competitors’ reactions can quickly change the picture.
Hello, I’m Maneshwar. I’m building git-lrc, a Micro AI code reviewer that runs on every commit. It is free and source-available on Github. Star git-lrc to help devs discover the project. Do give it a try and share your feedback.
I check my dev.to stats more often than I would ever admit in a job interview.
Reactions, views, comments, the little numbers that go up, and the ones that stubbornly refuse to.
Normally that ritual means opening a browser, clicking into the dashboard, and squinting at one article at a time like I’m reading tea leaves.
My top articles ranked by likes, by views, and by comments, all on screen at once, quietly refreshing itself while I pretend to do real work.
It took a tiny Go program, one wonderful archived project doing the heavy lifting, and two bugs I absolutely did not order but got served anyway.
There is an endpoint, GET /api/articles/me, you send your API key in an api-key header, and you get back every article you have published with the fields that matter already counted for you: positive_reactions_count, page_views_count, and comments_count.
You can generate a key at your dev.to settings under Extensions.
Grids, colors, borders, keyboard handling, refresh loops. Life is short xD
Three, therefore, I needed something that already draws pretty terminal dashboards and would happily show my numbers if I fed it nicely.
devdash is a highly configurable terminal dashboard by Matthieu Cneude, better known as Phantas0s.
It has widgets for GitHub, Google Analytics, Google Search Console, Travis, and more, and the entire layout is driven by a single YAML file.
Two small catches. It has been archived since 2023. And it has precisely zero concept of what dev.to is.
Now, I could have forked it, added a proper Forem service, wired up structs, written tests, and opened a pull request into a repo that is politely closed for business.
You hand it a shell command, it runs that command, and it renders whatever the command prints as a bordered table.
It splits each line of output on whitespace and slots the pieces into columns. That is the whole contract.
It just needs a command that prints rows. I can be that command.
If Matthieu ever reads this: thank you for building a tool flexible enough to be abused this gracefully.
Go bother Matthieu on X and tell him his archived project is still out here pulling shifts.

The little Go binary in the middle is the only thing I actually had to write.
It fetches all my articles (paginating 100 at a time until dev.to runs out), keeps only the published ones, sorts them by whichever metric devdash asks for, and prints clean rows.
And the config just points three table widgets at three flavors of that command.
Three of those blocks, colored red, green, and yellow, sitting side by side. In theory, done.
I turned it on. Overview strip populated. Most Liked, glorious. Most Commented, present.
The clue was in how devdash refreshes: it fires every widget concurrently, each in its own goroutine, all at the same instant.
Four widgets meant four copies of devto-stats sprinting at the dev.to API at once, elbows out. dev.to did the sensible thing and replied 429 Too Many Requests.
I had built a very small, very polite denial of service attack against myself.
The fix is the boring, correct one: on a 429, wait and retry, with backoff plus jitter.
The jitter is the important part. Without it, all four back off by the same amount and collide again, like four people apologizing and stepping the same way in a hallway.
The first row looked fine, then every row below slid one column right.
Here’s what devdash does under the hood: it splits each line on whitespace to get cells, joins those cells back together with commas, then splits the whole batch on commas again to chunk it into rows of N columns.
A comma inside a title is indistinguishable from a comma devdash added on purpose.
One title becomes two cells, the row has four pieces instead of three, and because the chunking is global, every row after it is shifted forever.
The real fix belongs upstream, in a repo that isn’t taking visitors.
My binary already slugifies titles to survive the whitespace split.
Here is the raw feed one panel runs on, straight out of the binary, real numbers from my actual account:
devdash takes three of those feeds and frames them into colored, bordered, self refreshing tables sitting shoulder to shoulder: Most Liked in red, Most Viewed in green, Most Commented in yellow, with a summary strip across the top.

Ctrl+R forces a refresh, Ctrl+C quits, and left to its own devices it repaints itself every five minutes.
444 articles, all of them accounted for, no browser, no clicking, just a quiet terminal telling me the truth about which posts people actually read.
The best integration is often no integration. devdash never learned about dev.to.
I made dev.to speak devdash’s language instead, and a tool that stopped being maintained in 2023 rendered 2026 data without a single change to its source.
The whole thing, Go helper, YAML, and Makefile, is here: lovestaco/devto_devdash.
Sometimes the best tool for the job is one somebody stopped working on years ago, sitting there quietly, still perfectly happy to dash off one more dashboard.
AI agents write code fast. They also silently remove logic, change behavior, and introduce bugs — without telling you. You often find out in production.
git-lrc fixes this. It hooks into git commit and reviews every diff before it lands. 60-second setup. Completely free.
Any feedback or contributors are welcome! It’s online, source-available, and ready for anyone to use.
GenAI today is a race car without brakes. It accelerates fast — you describe something, and large blocks of code appear instantly. But AI agents silently break things: they remove logic, relax constraints, introduce expensive cloud calls, leak credentials, and change behavior — without telling you. You often find out in production.
git-lrc is your braking system. It hooks into git commit and runs an AI review on every diff before it lands. 60-second setup. Completely free.
In short, git-lrc helps Prevent Outages, Breaches, and Technical Debt Before They Happen
At a glance: 10 risk categories · 100+ failure patterns tracked · every commit…
Templates let you quickly answer FAQs or store snippets for re-use.
Are you sure you want to hide this comment? It will become hidden in your post, but will still be visible via the comment’s permalink.
For further actions, you may consider blocking this person and/or reporting abuse
Thank you to our Diamond Sponsors for supporting the DEV Community
Google AI is the official AI Model and Platform Partner of DEV
DEV Community — A space to discuss and keep up software development and manage your software career
Built on Forem — the open source software that powers DEV and other inclusive communities.
We’re a place where coders share, stay up-to-date and grow their careers.
