OpenVision
Write the questions. Sit the exam. Grade it. Read the results.
A digital examination platform, built as an open replica of the assessment system universities like the VU run on. It was my bachelor thesis project, and then the subject of the thesis itself.
Bachelor thesis2026Next.js · FastAPI · PostgreSQL · Prisma · Dockeropenvision.davidcvet.com
The product
The whole life of an exam, in one place.
Four roles, constructor, reviewer, admin and student, each seeing only what their role allows, enforced on the server rather than hidden in the interface.
Write
Questions are versioned: editing one never rewrites the one an exam already used.
Assemble
An exam is a recipe, with rules for drawing questions from a bank at random.
Schedule
Scheduling freezes the exact versions of every question in it.
Sit
With extra time per student, such as thirty percent more, where it is needed.
Grade
Marking, question by question, and then the results.
The thesis
Can structure help an AI agent build software?
An AI coding agent rebuilt OpenVision from nothing but a specification, three times for each form of it, with the model and the prompt locked. Then every build was run, to see which ones actually worked.
One design choice separated them.
Every build whose login worked gave each sign-in a refresh token with a random part. The rest did not, so two sign-ins in the same second collided in the database. Only the implementation plan spelled that out.
The agents marked their own work as done.
Builds ticked off all 191 requirements while their login returned an error. You only find that by running it.
Nine builds are case studies, not a statistical proof, but the gradient held every time. I wrote the thesis with two fellow students, each of us running the same experiment on our own product; OpenVision was mine.
An exam platform, and the experiment it made possible.
One command, ./dev-up.sh --seed, starts the database, the API and the front end, filled with demo data.
