< cd ~/raba.pl

Developer & personal tools

QA.ninja

Make human testing part of the development loop, with enough context for the next person to act.

  • Prototype
  • 2026
  • Product, testing workflow and engineering

The problem

A URL alone is a poor testing brief. Testers need instructions and safe data, while developers need reproducible evidence rather than a message saying that something broke.

My part

Product and engineering work on the QA.ninja prototype. The public demonstration includes seeded apps and findings.

What this shows

I can design the handoffs around an AI-assisted workflow, so that human observations become clear, reviewable engineering work.

Where it started

QA.ninja explores the handoff between fast app development and human testing. The working prototype includes a testing hub, submission tooling, tester interfaces and an optional findings-to-fix workflow.

Interface preview

QA.ninja interface preview
The live testing hub, showing seeded demonstration apps.

The decisions behind the product

Package the testing mission

The submission flow carries the app URL, setup steps, task checklist and test data into a shared hub. Typed contracts keep the command, API and tester interface aligned.

Make findings actionable

Reports include severity, steps, expected behavior and actual behavior. Screenshots, videos and diagnostic attachments preserve the evidence needed to reproduce a problem.

Connect feedback to the next development step

A watcher detects new findings and can optionally hand them to a coding-agent fixer. A desktop interface brings jobs, findings and watcher state together; deployment requires its own explicit option.

What came out of the work

A demonstrable end-to-end prototype

The live hub serves real application listings and finding records. Seeded sample apps make the workflow available to inspect without claiming they are acquired customers.

A stronger handoff between people and tools

The product preserves the testing brief, reproduction evidence and repair context across the workflow. Real tester adoption, resolution rates and time saved still need measurement.

  • One loopfrom an app submission to findings and a reviewable fixImplemented prototype · checked 9 Oct 2026
  • Evidencescreenshots, video, console and network attachmentsFinding attachments · source-verified 9 Oct 2026

Inside the implementation

Explore the features, architecture and quality checks

What I built

  • A submission command that packages an app URL, setup instructions, test data and a task checklist
  • A public testing hub and an Expo tester interface using a shared validated contract
  • Structured findings with severity, reproduction steps, expected and actual behavior, and evidence attachments
  • Testing rounds with email dispatch and recorded delivery outcomes
  • A findings watcher with an optional coding-agent repair flow; deployment is separately opt-in
  • A Tauri desktop interface for jobs, findings and watcher controls

How it works

  1. Ship a testable briefThe developer submits the URL, context, tasks and safe test data.
  2. Try the productA tester follows the mission and works through the real interface.
  3. Report with evidenceStructured steps and attachments make a finding reproducible.
  4. Review a fixThe watcher can pass a new finding to a coding agent; applying fixes and deployment remain explicit options.

Quality and reliability

  • Submission and finding inputs are validated; related submission records are persisted transactionally
  • Attachment types and sizes are validated before storage
  • Public sample apps include deliberately planted bugs; their listings and findings are not adoption metrics
  • Email delivery is implemented; other notification adapters remain gated stubs in this prototype

Technology

  • Next.js
  • TypeScript
  • PostgreSQL
  • Neon
  • Zod
  • Expo
  • Tauri
  • Rust
  • Vercel Blob

Explore another problem I worked on

>_ Your next project

Liked what you saw?
Let’s get in touch!

Have an idea, a challenge, or a role in mind? I’d love to hear about it.

Let’s talk

>_ Start a conversation

Liked what you saw?
Let’s get in touch!

Tell me what you’re working on. Let’s see how I can help.

Email mepatryk@raba.pl
Send a message