When I changed of company, I joined a team of four members that use emails and a dedicated Slack channel to share local dev errors to the whole team so that more experienced devs can have a look (in parralel with they work) and give hints to fix that error.
The idea sounds reasonable: share errors with everyone, someone could help to fix them.
Here's what actually happens.
The error emails were piling up, mixing with preprod and prod exception fired seventeen times because many users (or one user hitting many times that buggy button) hit the same page before anyone noticed. Production noise mixes with preprod noise. And on top of it all: MR notifications, CI alerts, calendar invites, Slack threads about train issues.
So I did a rational thing — I stop reading. The channel that was supposed to surface problems becomes part of the background noise.
I've seen this pattern on teams of 5, when I was seating in the same room, now the team grown to 10 members, I moved and I'm full-remote, and those local error emails and slack channel are even more useless than before from my point of view since I can't easily help being remote.
The Sentry thought
I used Sentry a few years ago and loved it. Errors grouped by fingerprint, proper stack traces, occurrence counts — the basics, done right. But Sentry is a cloud service. Your stack traces, your user data, your environment variables — all shipped to someone else's servers.
For my side projects and my day job, I kept thinking: what if I had Sentry, but local? A tiny server on localhost that catches errors from my apps, groups them, and shows me a clean dashboard. No cloud. No account. No data leaving my machine.
That was the seed.
Then I kept pulling the thread
As a senior dev who also wears the ops hat — Terraform, AWS, CI pipelines, framework upgrades — my day is a constant juggle. I write code, push it, then switch to GitLab to check if the pipeline passed. Then I switch again to my mails to check if my MR got reviewed and back to my work.
Each of those context switches are small, but I always have it come back on "What was I doing?", "What was the next thing I should do?" instead of just building things.
So the idea expanded: what if the same app that catches my errors could also show me my open merge requests, pipelines, and my assigned issues? All in one place, updating in the background, without me having to leave my editor?
And then came to my mind our Tuesday weekly meeting. You know the one — everyone goes around the table and says what they did last week. And every time, I'm sitting there 10 minutes before the meeting thinking: what did I actually do? I've created some MRs, I fixed that and this bugs, I closed those issues. But I can't remember in details of all them. So I open GitLab, scroll through my activity, summarize it together quickly, and give a half-confident summary, with some "Ah, and I forgot that I did ...", no looking pro really.
But wait — if the app already knows my merged MRs, my closed issues, and my resolved errors... it can just generate that report for me. One click and explain each points I see from my report during the meeting. Done.\
And later, thanks to AI, generate a 2 minutes description of all my work, I could even copy/past in Slack as an async report to my boss.
No browser tabs, no notifications, a desktop app that is available when I need it.
Beacon
That's what I built. Beacon is a desktop app (Tauri + React + Rust) that unifies:
- Error tracking — a Sentry-compatible server on localhost:9000. Point your Sentry SDK at it, and errors show up instantly, grouped and searchable. Works with JavaScript, Ruby, and Python today. Adding more languages is almost nothing, but I prioritized the one I use everyday.
- Merge requests & pull requests — syncs from GitLab and GitHub via OAuth for simplicity. See what's open, who's reviewing, how old it is.
- CI pipelines — pipeline status per MR, with job-level detail. No more switching to GitLab to check if the build passed.
- Issues — your assigned issues, just here.
- Weekly reports — all the important information for your weekly meetings in a single place, with a markdown copy button. Copy/paste into Slack if needed!
Everything is stored in a local SQLite database. Beacon only reads from GitLab/GitHub — it never writes back (no conflicts management). It works offline (thinking of my colleages working in the train). There's no telemetry, no cloud, no account to create on someone else's platform.
What it feels like
I've been dogfooding Beacon for two weeks now, and the thing that surprised me most is the error notifications.
Being notified the second a Ruby exception fires or a JavaScript error occurs in my app — without having a tail -f on the logs or a web browser console open — is satisfying. It's the kind of thing that makes you feel in control instead of chasing for errors.
And looking at my MRs panel to see a pipeline just passed, without opening a browser? That's time I get to stay in my work.
And when Tuesday's meeting comes around, I just open the weekly report, and it's all there — MRs merged, issues closed, errors resolved. No more scrolling in GitLab activity.\
Went in holidays for two weeks? Change the report window size to 3 weeks and you'll find your work from the week before your holidays.
We are devs!
While developing and dogfooding it, naturally keyboard shortcuts implementation came to my mind, and editable layout too!
Your issues are on an unsupported platform, "My Assigned Issues" remain empty, but take space on the Beacon dashboard? Then remove it!
You'd like "Active Errors" to take more space, and pipelines a lot less? Just resize columns, and here you are: Beacon dashboard as you want it.
Who this is for
If you're a developer who:
- Don't want to chase for errors
- Wants to keep data out of the cloud
- Juggles MRs, pipelines, and issues across tabs
- Values privacy and local-first tools
- Don't have much space on the screen
Then Beacon might be what you've been looking for.
Try it
The MVP is done, and I'm now working on v1 with more features (Clickanle stack traces, pipeline job details, Issues detail view, GitHub Actions support).
I'm looking for early testers. If you want to try Beacon:
👉 Visit the Beacon website and subscribe to request access. Just let me know your platform (macOS, Windows, or Linux) and I'll send you an installer.
You can also follow the project on X/Twitter for updates.
I'd love your feedback — what works, what's missing, what you'd use daily. This is a tool built by a developer for developers, and your input shapes what comes next.






Top comments (0)