- Prompt and hope
- Code nobody read before release
- Tests that reimplement the logic instead of calling it
- „Works on my machine" as evidence
- A library for every problem, then 300 dependencies
- Friday evening releases with no way back
Vibe coding, with proof
AI makes us several times faster at writing code. What it does not speed up is understanding the product and being accountable for the result, so we wrote those down: the problem, the flow and the screen first, then the specification, then a gate that lets no defect through, then visibility in search and in AI engines. The numbers below come from real repositories, not from estimates.
Measured · 3 Sep 2026
Source files only: no dependencies, no build output, no minified files and no purchased themes.
Tests are counted as it(), test() and public function test definitions.
What „vibe coding" means here
The term became shorthand for generating code fast with nothing behind it. Here it means the opposite: AI is the tool for speed, the standard is the tool for safety.
- Specification and plan before the first line of code
- Human review of every change, line by line
- Tests that call the real function, proven by mutating the source
- A gate of
tsc + eslint + testsbefore every merge - Small isolated commits, money and tax logic never mixed with cleanup
- Measurement and daily backups after release
- SEO, AEO and GEO in the same pass, not as an afterthought
The most important work happens before the first line of code
Code is a consequence. What decides whether a product is worth anything is whether we understood the product itself, the real problem behind the request, and how a person actually does that job.
We do not write until we understand the job better than the brief
For a fiscal cash register we had to understand the tax obligation, not just the checkout screen. For publishing, consignment and who owes whom once a book sells. For a newsroom, what an editor's day looks like when news breaks at 11 pm.
We solve the problem, not the request literally
A request is often already a proposed solution. If there is a cheaper or simpler path behind it, we say so before we start, with the reason and the cost of both. The decision is yours, but before delivery rather than after it.
Flow before screens
We map the user's path first, including the branches everyone forgets: empty state, error, interruption halfway, several roles over the same screen. We measure steps to first value, not the number of features.
A system, not a set of pretty pictures
Colour, spacing, type and components are defined as a token system, so every next screen looks like the same hand drew it. The prototype is clickable before any code is written.
The quality gate is one command
Every project has the same gate, whatever the language: type checking, linting and the full test suite in a single call. Nothing ships until the gate is green, and every test is proven by deliberately breaking the source.
- Zero type errors and zero lint warnings in the touched file
- A file header explaining what the module does, who calls it and why it is solved this way
- No dead code and no duplicated logic, confirmed by hand, because tools lie about this
- Formatting and commit conventions automated, not argued about
Five of the most complex projects
Source code measured, routes, tables, migrations and tests counted. These run in production, they are not prototypes.
Tezga eKasa
Fiscal cash register and e-invoicing for SerbiaOfficially accredited fiscal device, ID 1597, issued by the Serbian Tax Administration.
Trek Magazin
Media platform, also sold white-labelEditorial system, own ad server, own analytics and a mobile edition.
Fascikla
Document management for companies and accountantsEmail intake, OCR, statutory retention periods, storage inside the European Union.
librum.market
Bookshop selling directly from authors and publishersConsignment model, per-author storefronts, e-books read in the browser.
GoSimple Space
Our own platform and this websiteShared account for every tool, plus our own content management system.
SEO, AEO and GEO are part of the work
A site nobody finds, and no AI engine can quote, is an expensive poster. Visibility is built in the same pass as the product.
Search engines
Heading structure, one H1 per page, internal linking in clusters, Core Web Vitals, canonical, hreflang and x-default, a sitemap that respects disabled pages.
Answers
The question as a subheading, the answer in the first two lines, a visible FAQ that matches the structured data, definitions and tables an engine can lift without interpretation.
Generative engines
llms.txt with a map of the site in plain language, clear descriptions of company and products, numbers in the copy, author and date, sameAs profiles. GEO is generative engine optimisation, nothing to do with geography.
Live examples you can inspect yourself:
librum.house,
librum.market,
librum.rs and
trek.rs.
Open /llms.txt and /sitemap.xml on any of them, and read the structured data in the page source.
Questions
Does the AI write the code instead of you?
AI writes a large part of the first draft, the way a translator writes a first draft of a translation. What gets built, how it is structured, what goes into the database and what ships is decided by a person, and that person is accountable for the result. Every line that reaches production has been read.
How do you stop the AI from inventing a solution?
Three things. Regulation is checked against the text of the regulation, never from memory. A test must call the real function, because a test that reimplements the logic is not a test. And every test is proven by mutation: we deliberately break the source and the test must fail. If it still passes, the test is worthless.
Why is this faster without being worse?
Because AI speeds up typing, and typing was never the expensive part. The expensive parts are misunderstood requirements and defects found late. A written specification before the code and a gate before every merge target exactly those two costs.
Do we own the code and can we take it elsewhere?
Yes. Code, database and rights are yours, with history and documentation. Handover includes an inventory of every account and rotation of every secret on the day of handover, so nobody keeps access they should not have.
Do you work on code someone else wrote?
We do, regularly. First we measure: dependencies and their vulnerabilities, test coverage, the most expensive queries, dead code. Then a plan ordered by risk, then fixes in small steps with a test around each one. A rewrite is proposed only when measurement shows it is the cheaper option.
Do you also do SEO, AEO and GEO?
Yes, in the same pass as development. Structure, schema, llms.txt, sitemap, speed and copy that answers the question go in while the page is being built, because retrofitting is always more expensive. You can inspect the result on our live sites.
How long does it take and what does it cost?
Price is on request, because an estimate before a specification is a wish, not an estimate. The first conversation and a rough estimate are free, usually within the same business day.
Tell us what you are building
Describe the problem and you get a proposed solution, a phased plan and a price, usually within the same business day. Price is on request, after a short specification.
Get in touch