Hey IH! I'm Selim, a solo founder who's been freelancing and building products for 5+ years. I just launched ReviseFlow — a visual feedback widget for staging websites — and I wanted to share the story.
If you've ever worked with clients on web projects, you know the pain:
Client sends an email: "The button doesn't look right on the homepage."
You reply: "Which button? What browser are you using? Can you send a screenshot?"
They send a blurry phone photo of their monitor.
Three email threads later, you finally understand they were zoomed in at 150% on Firefox.
I spent hours every week just decoding feedback. Not fixing bugs — just figuring out what the bug actually was. The context was always missing: browser version, screen size, console errors, which element they clicked. Multiply that across 5-10 active projects and it becomes a real bottleneck.
ReviseFlow is a lightweight JS widget you drop into any staging site. Your client clicks the feedback button, draws on the page, leaves a comment, and hits send. That's it — no accounts, no onboarding, no friction for them.
But here's the thing: behind that simple click, ReviseFlow automatically captures everything a developer needs:
Full-page screenshot with annotations
Console logs and network errors
Browser, OS, and device info
Viewport size and zoom level
Exact CSS selector of the clicked element
30-second session replay (via rrweb) -- working in progress.
Optional voice annotation (up to 60s)
Every piece of feedback lands in a Kanban-style board where your team can discuss, assign, prioritize, and resolve — all without leaving ReviseFlow.
1. Install the widget — One script tag in your staging site's HTML. Takes 30 seconds.
2. Clients give feedback — They click, annotate, comment. No account needed. The widget handles screenshots, console logs, device info — all automatic.
3. Your team resolves — Feedback appears instantly on your dashboard with full technical context. Drag to "In Progress" or "Resolved." Done.
I built this as a monorepo: Next.js 15 frontend, Express.js API, and a vanilla TypeScript widget bundled with Vite. The widget is intentionally framework-agnostic — it works on any website regardless of tech stack.
Some technical decisions I'm happy with:
Outbox pattern for integration syncing (reliable delivery even when third-party APIs are down)
rrweb session replay with a rolling 30-second buffer (lightweight, privacy-conscious)
html2canvas-pro for screenshots (works better than the original html2canvas with modern CSS)
Presigned R2 URLs for screenshot uploads (keeps the API lightweight)
ClickUp integration is live with full two-way sync — feedback creates tasks, and status changes in ClickUp flow back to ReviseFlow via webhooks. Jira integration is next on the roadmap.
I wanted to keep it accessible:
Free — 1 project, 1 seat, ClickUp integration included
Pro ($49,99/mo) — 5 projects, priority support
Agency ($149,99/mo) — 50 projects, 20 seats, full white-label customization
Yes, the free tier includes ClickUp integration. I think gating integrations behind paid plans is annoying when you're just trying to evaluate a tool.
ReviseFlow is live and accepting users. Here's what's on the near-term roadmap:
Jira integration (two-way sync like ClickUp)
Slack notifications
More annotation tools
Public feedback portal for external stakeholders
I've been lurking on IH for a while and always appreciated the transparency in this community. Building in public feels right for this kind of product — it's made by a developer, for developers and their teams.
If you work with clients, run an agency, or manage a QA process on staging sites, I'd love for you to try it out and tell me what you think. Honest feedback is literally what this product is about.
Check it out: https://reviseflow.io
Happy to answer any questions about the tech stack, business decisions, or the journey so far. Let me know what you think!