Inspiration
We’ve all had moments where a site “feels off” but nothing in the basic uptime checks or logs tells you why. Strux came from that frustration, we wanted a quick, honest health check that behaves more like a real user hitting your app, without needing to wire up a whole observability stack first.
What it does
You paste in a URL, hit run, and Strux exercises your site with a small set of real HTTP checks: response time, load, error handling, and endpoint resilience. It shows live progress in a simple dashboard and then gives you a score, a plain‑English summary, and a detailed breakdown of what looked healthy and what didn’t, all tied to a Sentry trace.
How we built it
Under the hood, Strux is a Node/Express backend with WebSockets that runs each check in sequence and streams updates to a React + Tailwind frontend. We use Sentry on the backend to wrap every run in a transaction, with one span per test, so you can jump from a “red card” in the UI straight into the corresponding trace and exception in Sentry.
Challenges we ran into
The hardest part was making the tests feel “real” without being random, we rewrote several checks to use actual HTTP behaviour but still be explainable in the UI. We also had to carefully line up WebSocket events, run IDs, and Sentry spans so everything tells the same story, whether you’re looking at the dashboard or the Sentry timeline.
Accomplishments that we're proud of
We’re proud that Strux feels like something you could actually drop into a team’s workflow: the UI is clean, the checks are understandable, and the Sentry view mirrors what you see on screen. The run ID that links the report to a full Sentry trace makes it feel like one tool instead of two separate worlds.
What we learned
We learned that a little bit of structure around reliability checks goes a long way – when every run has a clear ID, spans, and breadcrumbs, debugging feels less like guesswork. We also got a better feel for designing tests and UI so non‑observability folks can still understand what’s happening without reading logs all day.
What's next for Strux
Next, we’d like to add a “sandbox mode” using Daytona so you can run the same checks against a fresh environment from a repo, not just a public URL. We also want to tighten the Sentry story even more with saved searches and dashboards around run IDs, so you can track reliability trends over time, not just one‑off runs.
Built With
- express.js
- javascript
- node.js
- react
- sentry
- tailwind

Log in or sign up for Devpost to join the conversation.