Selected work / 02Founder and architect

Wingwise

Ground school with interactive flight labs, your airplane’s handbook, checkride practice and the FAA’s own pages.

Role
Founder and architect
Courses
PPL, IR, CPL, ME, CFI, CFII, MEI
Stack
Next.js 16, React 19, TypeScript, Postgres, Drizzle, pg-boss, Claude, ElevenLabs
Status
Private beta
The critical engine lab: a twin seen from above with the left engine failed and both propellers turning clockwise. A red arrow shows the airplane yawing left toward the dead engine, and the panel explains why losing the left engine is worse.
The critical engine lab: fail an engine, flip the propellers’ rotation, and watch which failure the rudder has to work harder against.

01The problem

Most ground school is a video course and a question bank. Students memorize answers to pass the written test, then meet the same ideas again in the airplane and in the oral exam, where an examiner asks why.
Wingwise asks you to predict what will happen, test it in a flight lab, check the explanation against the FAA source, and practice explaining it out loud.

02Why it was hard

01 · Accuracy

Aviation content has to be right, and checkable

Every claim needs a source a student can open, and a check that the quote is really on that page.

02 · Every airplane differs

The numbers have to be your airplane’s

Speeds and limits change by model and serial. The platform has to know which numbers it has checked against your own handbook.

03 · Seven standards

The test is a moving target

ACS and PTS documents for seven courses, with different structures, revisions and footnoted tables for added ratings.

03What I built

  • Labs
    62 interactive diagrams built on models of the physics in a shared domain layer. Experiments ask for a committed prediction before the controls unlock, and the lesson player loads only the lab a stage shows.
  • Sources
    22 FAA documents and parts of 14 CFR registered with their checksums. PDFs are rendered to page images, citations resolve to printed page labels, and the quote is found and marked on the page. Regulations are pinned to a dated eCFR version, and moving to a newer one lists the sections that changed and the lessons that cite them.
  • Your airplane
    A student uploads their handbook. A worker reads it and renders it, the student confirms the title page, and every fact is checked against the cited page of their own copy. Each lesson says where its airplane figures came from and whether they’re checked for this student.
  • Standards
    One parser for every ACS and PTS, checked against each document’s own contents pages. Lessons, concepts and questions link to the standard’s elements, so coverage, knowledge gaps and mastery come from the real test. Spaced review uses FSRS.
  • Oral practice
    Seven modes by voice or text, from a strict mock checkride to a teach-back mode where the AI plays the student. The examiner speaks only from cited lesson passages and the student’s own airplane facts, and every session ends in a written debrief. Every model call is metered against a budget.
  • Platform
    A modular monolith: one Next.js codebase running a web process and a pg-boss worker on one Postgres. Each server module owns its tables, and authorization is checked next to the data, never only in the UI.

04Decisions

DecisionInstead ofBecause
Lessons as files, published as immutable versionsA headless CMS, or editing in the databaseContent stays diffable and testable in git, CI checks every citation before it ships, and a review points at an exact version, so an edit shows as “changed since review”.
Background jobs in pg-boss on the same PostgresRedis and a queue service, or work inside the requestOne stateful service to run and back up. Jobs are durable and retried instead of lost on a restart.
One standards model for ACS and PTSA separate model for the older PTSEvery page that lists tasks would otherwise need two versions. A PTS objective is an element without a printed code.
A check belongs to one student’s copyTrusting a model’s handbook for everyoneA confirmation is only worth something for the pages that student actually saw. A corrected fact is never covered by a check of the old one.

05Results

7
courses, private pilot to multi-engine instructor
88
lessons written, with more planned in each course
7,928
inline citations to 22 FAA and CFR sources
62
interactive labs
4,748
unit and integration tests in the full check
288
browser tests on phone and desktop, with accessibility checks

06Evidence