Skip to article
Understand and put into practice8 min read

Vibe coding: what it is and how to make a first useful prototype

Explore vibe coding through a service-cost calculator: from an AI assignment to checking the formula, errors, and mobile screen.

What vibe coding means in plain language

Vibe coding is a way to build a program by describing desired behavior to AI in ordinary language and refining the result as you work. Instead of starting with syntax, you start with a task: ‘Show the project cost from the number of hours and the rate.’ The model proposes code; you run it, check it, and ask for specific errors to be fixed.

In everyday speech, ‘vibe coding’ can mean almost any AI-assisted development. It is more useful to distinguish two modes: a quick experiment to explore an idea, and product work where you understand the solution’s structure and take responsibility for its behavior. An attractive first screen may appear before correct calculations, data persistence, and access protection.

For an entrepreneur or freelancer, a good first project is a small tool with an obvious check: a calculator, estimate form, or meeting preparation list. Starting with a payment service or an app containing a customer database is difficult: errors would affect money and other people’s data rather than an educational example. Below, we examine a calculator you can check manually.

What you delegate to AI and what you check yourself
StepAI can prepareYour check
TaskClarifying questions and a planWhether the user needs this result
InterfaceFields, a button, and labelsWhether units and the next step are clear
LogicA formula and input handlingWhether the answer matches a manual calculation
ChangesCorrected codeWhether previous scenarios still work

Choose a tool for the result

For a first attempt, an environment that lets you describe the task, inspect files, and open a working preview is convenient. Another route is an editor with an AI assistant or a command-line agent in a local project: this offers more file control but requires understanding startup and dependencies. Check the particular service’s capabilities, availability, and plan before working.

Do not choose a tool solely for an impressive demo. Run a short trial: ask it to add one field and fix one error. Then check whether you can retrieve source files, open an earlier version, and understand where data lives. If code cannot be obtained or you cannot reproduce the result, moving the project becomes a separate task.

Minimum environment checks
QuestionHow to check in one trial
Can I see the result?Open the preview on a computer and phone
Can I access source files?Find and download the educational project files
Can I undo a change?Save a version, change a label, and restore it
Where are the costs?Read AI request and publication terms before continuing

First assignment: a service-cost calculator

An educational situation: a designer estimates a small job by time. Inputs are hours, rate, and a time reserve percentage. The output is an estimated cost rather than a commercial offer. The example formula is hours × rate × (1 + reserve / 100). Taxes, contract currency, and work scope are excluded; discuss these conditions separately.

AI assignment: ‘Build one HTML page for a service calculator. Fields: hours from 0 to 1000, rate from 0 to 100000, reserve from 0 to 100 percent. Calculate hours × rate × (1 + reserve / 100), rounding the total to two decimal places. Label the units. Empty, negative, and out-of-range values must produce a clear error. Do not send or store data anywhere. Add a calculate button, accessible labels, and a mobile layout. Explain the plan first.’

This assignment contains constraints, a formula, and a result criterion. It is more precise than ‘make a beautiful calculator’. After the response, check the plan for unnecessary registration, analytics, a payment form, or a server. One page without external connections is enough for this exercise.

A work cycle for a small feature
  1. Describe

    Inputs, output, and constraints

  2. Obtain

    One working version

  3. Check

    Manual calculation and invalid input

  4. Correct

    One reproducible error at a time

  5. Save

    A clear, checked version

Check the result rather than the model’s confident answer

Open the educational calculator through the sources link. Enter 12 hours, a rate of 1500 rubles, and a 20% reserve. Manually: 12 × 1500 = 18000; the reserve is 3600; the total is 21600 rubles. Compare the number, rather than only the attractive design. Then repeat the table’s checks on the version you generated yourself.

Calculator test set
InputExpected behaviorWhat it reveals
12; 1500; 2021600,00 ₽Correct reserve formula
2,5; 2000; 105500.00 ₽ when fractional input is allowedFractional hours and rounding
0; 1500; 200,00 ₽An allowed boundary value
Empty hours fieldAn error; no new result appearsHidden substitution of zero
−1 hour or a 101% reserveRange errorConstraint checking
Clear a field after calculatingThe old total is not presented as newStale interface state

If the calculator shows 18360 instead of 21600, do not ask it to ‘make it work properly’. Record the input, actual result, and expected result: ‘12; 1500; 20 → 18360, expected 21600. Check which amount the percentage applies to.’ This report helps the model fix the cause. After the change, repeat the entire short set: fixing one formula can alter empty-input handling.

Separately open a narrow window. Labels must not disappear, the button must not cover fields, and the total must not go offscreen. Navigate fields with Tab. Clear errors and keyboard usability are checked separately from arithmetic.

How to retain a working version

Change one part at a time: calculation first, then errors, then design. Before the next step, save working files or a version in version control. Label the result specifically: ‘Formula and six checks pass’, rather than ‘almost done’. That gives you a clear place to return after an unsuccessful change.

Track discovered errors as tasks: reproduction, expected result, and checking method. In Sinqly, you can organize this list and move the work forward in small steps. The calculator remains a separate educational project; a task manager does not replace checking generated code.

  • Do not upload client secrets into an educational project: use invented data.
  • Do not automatically accept new dependencies: find out why one form needs them.
  • Before publishing, check source-file access, absence of secrets, and hosting service terms.
  • Save a check log alongside the version you intend to show.

When to hand the prototype to a developer

If accounts, payments, multiple users, or persistent data storage appear, more than code length has increased. Access rules, error recovery, backups, and checking that one person cannot see another’s data are now needed. One successful page viewing is insufficient.

Give a specialist a specific package: why the tool is needed, what already works, where source files are stored, which checks were run, and which errors remain. Such a prototype helps discuss product behavior. It does not prove that the product can handle real load or is safe to open to everyone.

The first useful vibe-coding result is not a line count or a promise to manage without developers. It is a small working tool that you can explain, check, and roll back if necessary. If those three actions are available, the next step becomes much clearer.

Sources

Frequently asked questions

Do I need programming knowledge for vibe coding?

For a first small experiment, you can start with ordinary language. But fixing errors and releasing a product gradually require understanding code, data, and checks.

Are vibe coding and AI-assisted development the same?

The terms are often mixed. In practice, distinguish free experimentation from development where changes are understood, checked, and saved.

Can I make an app for free?

An educational HTML page can be opened locally without hosting. Access to a particular AI tool, publication, and ongoing operation depend on its current terms.

Turn an idea into action

01
A practice example: a task card can hold the expected result and input data. Use the article’s description for your own action; the onscreen example is not transferred to your account automatically.Real Sinqly interface · example tasks
A practice example: a task card can hold the expected result and input data. Use the article’s description for your own action; the onscreen example is not transferred to your account automatically.

A practice example: a task card can hold the expected result and input data. Use the article’s description for your own action; the onscreen example is not transferred to your account automatically.

Sinqly Editorial team

The Sinqly editorial team. Your feedback helps us improve the examples and articles.

Help improve our next article

Was this helpful?

Rate the article and tell us what was missing. Your feedback goes to the Sinqly team and will not be published on the site.

How useful was the article?
Not helpfulClear now
Do not include passwords or personal information. Up to 2,000 characters.
Vibe coding: what it is and how to make a first useful prototype | Sinqly