The most detailed free FDE + DevOps library: 140+ lessons, 70+ labs and 80 long-form articles, in English and Turkish. Start learning →

Build with AI: From Zero to Your First App · Module 5: Turn a page into an app

Do You Need an API or Backend?

The most expensive beginner decision is adopting a backend before needing one. This lesson gives three tests that keep course projects server-free with a clear conscience.

9 min reading

Objectives

  • Decide whether a project needs a server with three tests
  • Explain what an API is in one honest paragraph
  • Name what stays browser-only in course projects and why
  • Write the no-backend statement for your project README

Why this matters

Backends bill, break and demand security thinking (secrets, accounts, abuse) that this course deliberately postpones. A project that needs none of it should say so proudly: "runs entirely in the browser, no accounts, no server." The decision is technical and commercial at once, and beginners get it wrong by copying tutorials that needed backends for different jobs.

Concepts

What an API is. A waiter between your page and someone else's computer: your page asks ("what is the menu today?"), the server answers with data. You need one exactly when the browser cannot answer alone: shared data across devices, secrets that must stay hidden, or work the browser cannot do. No shame in either answer; the shame is in paying for a waiter when the kitchen is in the room.

Three tests. One: must two devices see the same changing data (shared orders across counter and kitchen)? If no, browser storage suffices. Two: must a secret stay off the visitor's machine (a private key, a paid quota)? If no, there is nothing to hide. Three: must work happen while the visitor is gone (nightly messages, scheduled checks)? If no, the page computes on demand. Three noes mean no backend. One yes means a backend conversation starts, with help, after this course.

Course projects answer no three times. The bakery page: one counter tablet (no shared state), no secrets (prices are public), computation on demand (totals when asked). Browser-only is not a limitation here; it is the correct architecture, and the README should claim it: "No accounts, no server; orders persist in this browser on this device."

Worked example

Two ideas sorted. Idea A: family bakery order page for one tablet. Tests: one device (no), public prices (no), on-demand totals (no). Verdict: browser-only, stated proudly. Idea B: lunch orders from many offices converging on one kitchen screen. Test one flips to yes (shared state across devices): backend conversation needed, honestly deferred with "multi-device sync is out of scope for version one; the page runs per-device today." Same framework, two verdicts, zero guilt either way.

Expected result: your project sorted by the three tests with a verdict plus a one-line README statement.

The common wrong move

Adopting a backend "to learn it" inside a project that needs none, then spending the course on server errors instead of the app. Learn backends as a later project with backend-shaped needs, not as luggage on this one.

Lab and next step

Lab A16 runs the three tests on three ideas and writes the README statements. Next, module M06 makes AI collaboration reliable: small changes, snapshots, context handoffs and quota discipline.

Quick check

An optional 4-question self-check. Answers never leave your device, are not stored, and never count toward any assessment.

Lesson feedback

No published feedback yet.

Log in and complete the lesson to leave feedback.

Exercise

Run the three tests on your project idea; write the verdict (backend or browser-only) with one line per test plus the README statement.

Pass criteria

Three tests answered with reasons; verdict consistent with the answers; README one-liner states backend status honestly.

Log in to track progressFree account: stores only your lesson progress and quiz results.