Skip to content
Nur Ali
All work
Data & Search2025 · Full-stack engineer

CodkaBukaanka

Investigative medical incident archive with public search

A trusted archive for documenting and searching verified medical incident records — built for hospitals and journalists who cannot rely on unverified social feeds.

CodkaBukaanka cover
Next.jsReactTypeScriptExpressPostgreSQLPrisma

Problem

Medical incident reporting sat between private hospital records and unverifiable social posts. Hospitals and journalists needed a trusted way to document, review, and search verified records — without turning the product into another rumor feed.

Business context

The product had to earn trust from two audiences at once: administrators who control what becomes public, and the public who need searchable, credible information. Publishing risk and data sensitivity shaped every product decision.

Research

Mapped core entities — hospitals, patients, doctors, medications — and the relationships between them. Prioritized search quality, evidence attachment, and a clear draft-to-published gate over social features that would erode trust.

Architecture

Monorepo with a Next.js frontend and Express REST API backed by PostgreSQL and Prisma. JWT-authenticated admin surfaces control drafting and publishing. Evidence uploads attach to incident records. Global search indexes entities for public discovery while unpublished drafts remain private.

Tech stack

Next.js · React · TypeScript · Express · PostgreSQL · Prisma

Key features

  • Public global search across hospitals, patients, doctors, and medications
  • Entity profile pages with related incident context
  • Evidence upload pipeline for supporting documentation
  • JWT admin authentication with draft-to-published workflow
  • Admin-controlled publishing to protect unverified records

Engineering challenges

  • Keeping public search useful without leaking unpublished drafts
  • Modeling related medical entities without creating brittle joins
  • Making the admin publishing path safe under time pressure

Tradeoffs

  • Chose a dedicated Express API over a BaaS for clearer auth and publishing boundaries
  • Favored structured entity search over free-form social discussion
  • Accepted admin review latency in exchange for public trust

Results

  • Live platform at codkabukaanka.com
  • Admin-controlled publishing with public search across core entities
  • Production workflow from draft submission through verified publication

Lessons learned

  • Trust products are workflow products — the publish gate matters more than the landing page
  • Entity modeling early prevents search from becoming a dump of unstructured text
  • Admin UX is part of product quality when humans are the verification layer

Performance

Server-rendered public pages with API-backed search. Image and evidence assets served separately from query paths so browsing stays responsive while uploads remain durable.

Future improvements

  • Richer search filters and saved queries for journalists
  • Audit logging for every publish and unpublish action
  • Hardened media scanning and retention policies
CodkaBukaanka additional screenshot
CodkaBukaanka additional screenshot