Inspiration

I work in a startup contract testing lab, where you're exposed to everything: testing, calibration, compliance, and worst of all: documentation. I hated documentation. The actual studies often take minutes, but physically making the reports and logging every sample by hand, transcribing forms, generating certificates takes hours. And with the volume of samples we handle, mistakes happen. In a regulated lab, a documentation error isn't just annoying it's a compliance problem.

I kept thinking there had to be a better way than the paper logbooks and manual transcription we relied on. Other companies are over scoped for our purposes and way too expensive. So I built one.

What it does

Polaris is the compliant digital front door for small pharma and contract testing labs that still run sample intake on paper. You snap a photo of a handwritten receiving form, and Polaris turns it into a verified, audit-ready digital record:

  • Capture & extract OCR (Amazon Textract) reads the fields off the photo, with per-field confidence scores.
  • Review & correct extracted data is shown side-by-side with the original image; low-confidence fields are flagged so the analyst verifies exactly where it matters.
  • Sign applying a Part 11–style e-signature requires re-authentication, and each signature is bound to the record by a content hash.
  • Generate Certificates of Analysis are generated by the program from a selected monograph panel.
  • Audit every change is captured in an append-only, tamper-evident audit trail, so signed records can be proven unaltered.

How we built it

The frontend is Next.js on Vercel. The marketing landing page was built with v0, but the entire product sample intake, OCR-assisted review, e-signatures, deterministic CoA generation, the audit trail, every API route, the domain logic, and the PostgreSQL schema with its triggers and migrations was designed from scratch and implemented quickly with the help of Claude.

The backbone is Amazon Aurora PostgreSQL (Serverless v2) as the primary datastore. Crucially, the audit trail is enforced at the database layer with Postgres triggers, not in application code so it can't be bypassed. Original photos are stored in Amazon S3 , and Amazon Textract handles OCR with the confidence scores that drive our review flow. Stripe powers the subscription funnel. Auth is credential-based, with re-authentication required at the moment of signing.

We built it local-first. the same code runs against local Postgres and a mocked OCR stub so moving to the full AWS stack was an environment-variable change and not a rewrite.

Challenges we ran into

The hardest problem was handwriting. OCR handles printed fields well, but the handwritten lot numbers, lab record numbers, and codes exactly the fields that matter most are where it struggles. The answer wasn't a better model; it was designing the human-in-the-loop review around the uncertainty: surface confidence scores, flag the unsure fields, and make verification fast where it's needed and effortless where it isn't.

The second challenge was doing compliance honestly. It would have been easy to slap "FDA compliant" on everything. But software alone can't be compliant — so we drew careful lines: deterministic CoA generation (never AI-authored), a database-enforced audit trail, content-hash–bound signatures, and accurate framing: "designed to support 21 CFR Part 11," not "certified."

Accomplishments that we're proud of

That it's real. Polaris is live, deployed, and built around a problem I actually live every day and validated by the lead scientist and the founder of a working lab, both of whom do this for a living.

We're proud of:

  • A tamper-evident audit trail that's genuinely un-bypassable (enforced in the database, not the app).

-Building a tool that a real lab is using right now

The fact that it's a focused tool that does one real workflow end-to-end, and does it well.

What we learned

The biggest lesson was staying within the scope of the project. The temptation in a project like this is to keep adding. Configurable everything, a feature for every edge case, complexity for its own sake. We learned that the harder and more valuable skill is staying in scope: deciding what not to build, resisting over-engineering, and making one workflow genuinely useful, efficient, and reliable instead of ten that half-work.

A focused tool that does the core loop end-to-end and works every time beats a sprawling one that's impressive on paper but fragile in practice. Building something real means knowing where to stop.

What's next for Polaris

  • Configurable, versioned templates — letting labs define their own logbook and CoA structures through an onboarding process, version-aware so old records always render under the template they were signed with.
  • AI-assisted narrative reporting — drafting the prose layer (trend summaries, investigation narratives) from deterministic data, human-reviewed — never the regulated numbers.
  • Deeper integrations — a REST API into existing LIMS, ERP, and quality systems.
  • Real labs — turning the design-partner relationship into paying customers and proving it in production.

Built With

Share this project:

Updates