AETumi — AI-native 3D web platform for Three.js, WebGL and interactive websites
News & Guides

Templates vs. from-scratch: shipping design-led sites faster with AI

September 8, 2026 · AETumi

The templates vs from scratch decision is not "generic vs. original" — it is "where do I spend my custom effort?" For most design-led launches, starting from a strong, full-source template and adapting it with an AI coding assistant ships a genuinely bespoke result faster than building from zero. Build from scratch only when the interaction model is truly novel, the data fights every layout, or the design itself is the product. That is the practical rule this guide defends, with a system model, working code, and honest trade-offs. AETumi is an AI-native 3D web platform whose editable templates are designed to be adapted, not merely deployed.

The old objection — "templates look generic" — is only true when the template is the destination. Treated as a starting layer, a proven layout, motion system, and tech stack remove the blank-page tax and let you concentrate on the 20% that makes a site unmistakably yours. The AI assistant closes the gap the rest of the way: it restyles real source in place instead of guessing at a black box.

The workflow, end to endAETumi technical diagram — The workflow, end to endBrief& art directionPromptthe agentBuildfrom owned sourceReview& refineShipproduction
The workflow, end to end

Table of contents

What you'll learn

  • How to frame templates vs from-scratch as an effort-allocation decision, not a quality one.
  • The adaptation pipeline that lets an AI agent restyle a template section by section.
  • Concrete patterns — config separation, design tokens, component swaps, build prompts — with code.
  • Where from-scratch genuinely wins, and how to tell before you commit.
  • The performance, accessibility, and maintenance trade-offs of each path.

What the templates vs from scratch choice really means

A template is a finished, opinionated implementation: layout, motion, component structure, and a working build. From-scratch means an empty repository, a design file, and every decision still open. Framed that way, the two look like opposites. In practice they sit on a spectrum, and the real question in templates vs from scratch is how much of the finished work you keep and how much you replace.

Tree of Life
Tree of Life — live preview from the AETumi library

The trap is treating a template as a locked artifact. A template that ships as an opaque export — a minified bundle, a page builder's proprietary format, a demo you can only theme through a settings panel — really does cap your ceiling at "looks like everyone else who bought it." A template that ships as full, readable framework source has no such ceiling: it is a head start you can rewrite line by line. The distinction that matters is not template vs. no-template; it is owned-source template vs. black-box template. AETumi ships every 3D website template as editable React, Next.js and Three.js source for exactly this reason.

Why the decision matters more with AI in the loop

Before AI coding assistants, adapting someone else's codebase was often slower than writing your own — you had to read and understand every file before you could safely change one. That reading cost is what made from-scratch attractive: at least you understood every line because you wrote it.

Before vs afterAETumi technical diagram — Before vs afterGeneric AI outputAETumi-directed buildSame template lookDistinctive art directionRegenerated defaultsSource you ownFlat pagesCinematic 3D depthNo reviewHuman-reviewed
Before vs after
Plume
Plume — live preview from the AETumi library

AI assistants invert that math. An agent like Claude Code or Cursor can read an entire template in seconds, explain any section, and apply a targeted change across many files at once. The comprehension tax that used to make templates expensive to adapt has largely collapsed. That is the single biggest reason the templates vs from scratch balance has shifted toward templates for design-led work: the assistant does the reading, so you get a template's speed with custom code's flexibility. The one condition is that the source must be real and readable — an agent cannot meaningfully edit a black box either.

A system model: the adaptation pipeline

Think of a good template as three separable layers stacked on a build:

Funnel
Funnel — live preview from the AETumi library

1. Structure — the layout, routing, and section composition. Stable; you rarely rewrite it. 2. Style — design tokens, typography, color, spacing, motion timing. This is where "yours vs. theirs" lives, and where most of your effort should go. 3. Content — copy, media, product data. Fully yours, ideally stored apart from the components that render it.

The adaptation pipeline runs top-down through those layers: keep the structure, replace the style, inject your content. An AI agent is the executor at each stage — you describe the brand outcome, it edits the tokens and swaps the content bindings. From-scratch skips step one by building structure fresh, which is only worth it when no existing structure fits. The rest of this guide shows the code that makes each layer independently editable, because that separation is what makes the whole trade-off tilt toward "adapt."

Technical implementation: separate content from structure

The mechanical key to fast adaptation is that a component should never hard-code the words, colors, or media it displays. When those live in a config file and a token sheet, changing the brand is a data edit, not a code rewrite — and an AI agent can do a data edit safely without understanding every rendering detail. The four demos below move from content, to tokens, to the component that consumes both, to the AI workflow that drives the whole thing.

Tentacle Star
Tentacle Star — live preview from the AETumi library

Code: theming, config, components, and AI prompts

Demo 1 — Content lives in config, not components. The first move in any adaptation is to pull copy and media out of JSX and into a plain object. Now "make it ours" starts as a text edit.

{
  "hero": {
    "eyebrow": "Studio-grade 3D on the web",
    "headline": "Launch a cinematic site this week",
    "sub": "Editable source, not an opaque export.",
    "cta": { "label": "See the templates", "href": "/3d-websites/" },
    "media": "/media/hero-scene.webm"
  }
}

This is the content layer. Because nothing here is code, a non-developer — or an AI agent following a brief — can rewrite the entire hero without opening a component. Trade-off: a config layer adds one indirection to trace when debugging, so keep the shape flat and documented.

Demo 2 — Design tokens make restyling a one-file change. Structure stays put; identity moves entirely into CSS custom properties. Rebrand by editing this block, and every component inherits the new look.

:root {
  --brand: #6a5bff;
  --brand-ink: #0b0713;
  --surface: #faf9ff;
  --font-display: "Futura", ui-sans-serif, system-ui, sans-serif;
  --radius: 14px;
  --motion-fast: 180ms;
}
.button {
  background: var(--brand);
  color: var(--surface);
  border-radius: var(--radius);
  transition: transform var(--motion-fast) ease;
}

Because components reference tokens rather than literal hex values, a template restyle is a token edit, not a find-and-replace across dozens of files. Trade-off: tokens only help if the template was authored with them — a template that hard-codes #6a5bff inline fights you, which is a real signal about template quality before you buy.

Demo 3 — A component that reads both layers. The React section binds structure to content and tokens without knowing either concretely. This is the piece the AI agent adjusts when a section needs a genuinely new arrangement.

import content from "@/data/site.json";

export function Hero() {
  const { eyebrow, headline, sub, cta, media } = content.hero;
  return (
    <section className="hero" data-surface>
      <p className="hero__eyebrow">{eyebrow}</p>
      <h1 className="hero__headline">{headline}</h1>
      <p className="hero__sub">{sub}</p>
      <a className="button" href={cta.href}>{cta.label}</a>
      <video className="hero__media" src={media} autoPlay muted loop playsInline />
    </section>
  );
}

The component is pure structure: swap the JSON and the tokens and it renders your brand. Expected behavior: nothing in this file changes during a rebrand. Trade-off: over-abstracting every section into config can slow genuinely custom one-off pages — reserve deep configurability for the sections you will reuse.

Demo 4 — Drive the adaptation with an AI build prompt. Instead of hand-editing, describe the outcome and let the agent apply it across the three layers. A precise prompt is the actual interface for templates vs from-scratch work.

Using the Hero template as the base:
1. In data/site.json, rewrite hero copy for a fintech brand,
   confident but plain — no hype words.
2. In tokens.css, set --brand to #0e7c66 and --font-display to "Söhne".
3. Keep the layout and motion timings unchanged.
Show me a diff before writing files.

The agent edits content and tokens, leaves structure alone, and returns a reviewable diff. Expected behavior: a scoped, auditable change set. Trade-off: AI output still needs review — a wrong token value or an over-eager refactor is easy to catch in a diff and expensive to catch in production.

Demo 5 — When you do go custom, the scene code is still ordinary source. Even the 3D layer of a good template is plain Three.js you can extend, not a sealed widget. This r160 ES-module snippet is the kind of code you inherit and are free to rewrite.

import * as THREE from "https://cdn.jsdelivr.net/npm/[email protected]/build/three.module.js";

const scene = new THREE.Scene();
const camera = new THREE.PerspectiveCamera(50, innerWidth / innerHeight, 0.1, 100);
camera.position.z = 4;

const renderer = new THREE.WebGLRenderer({ antialias: true, alpha: true });
renderer.setPixelRatio(Math.min(devicePixelRatio, 2));
renderer.setSize(innerWidth, innerHeight);
document.querySelector(".hero__media")?.replaceWith(renderer.domElement);

const mesh = new THREE.Mesh(
  new THREE.IcosahedronGeometry(1.2, 1),
  new THREE.MeshStandardMaterial({ color: 0x6a5bff, roughness: 0.35, flatShading: true })
);
scene.add(mesh, new THREE.DirectionalLight(0xffffff, 2));

renderer.setAnimationLoop(() => {
  mesh.rotation.y += 0.004;
  renderer.render(scene, camera);
});

Because it is real source, you can change geometry, material, or lighting freely — the template gave you a working scene, not a locked one. Trade-off: capping pixelRatio at 2 trades a hair of sharpness on high-DPI screens for a large fill-rate saving; that is the right default for a background, and something you can only tune because you own the code.

Real product evidence

The demo video below shows a single full-source template being rebranded — new tokens, new copy, new hero media — with the structure untouched. What it proves is the central claim of the templates vs from-scratch argument: the finished result reads as bespoke, yet the effort went almost entirely into the style and content layers, not into rebuilding layout, motion, or the WebGL fallback path. That is the speed advantage made concrete. The starting point disappears precisely because it was a starting point, not a destination.

Performance

A well-built template usually starts ahead of a fresh build on performance, because its layout shifts, image sizing, lazy-loading, and animation frame budget have already been tuned against real devices. From-scratch starts at zero on all of that. The risk with templates is inheriting weight you do not need — an unused animation library, fonts you will not ship, a heavy hero on every route. Adaptation should include subtraction: an AI agent is good at finding and removing dead dependencies when you ask it to. Net, the performance edge in templates vs from scratch goes to the template if you prune, and to from-scratch only if the template was bloated to begin with.

Accessibility

Accessibility is the strongest hidden argument for templates. Focus management, keyboard navigation, prefers-reduced-motion handling, semantic landmarks, and color-contrast-safe tokens are laborious to get right from scratch and easy to forget under launch pressure. A quality template ships them already wired. When you adapt, preserve them: keep the prefers-reduced-motion guard on every animation, keep heading order intact when you swap copy, and re-check contrast after you change brand tokens. An AI assistant can audit these in the diff, but a human should confirm — automated checks catch contrast, not whether a focus order still makes sense.

Production trade-offs

Templates carry real costs, and honesty about them is part of the decision. You inherit someone else's architectural assumptions, which occasionally collide with your data model. You may carry code you never use until you prune it. And a popular template can, if you barely touch it, look like its neighbors. From-scratch trades those for a different bill: more time before first pixel, more surface area to test, and the accessibility and performance groundwork you now own entirely. Sometimes simpler tech wins outright — a static hero image or a short muted video can beat both a template scene and a custom one when the page does not need interactivity. Do not reach for a 3D template, or build a custom scene, when a flat image communicates the same thing faster.

Expert Note — Prune before you personalize. The first hour with any template should be deletion, not decoration. Ask your AI agent to list every dependency the template imports and flag the ones the pages you keep never touch, then remove them. Teams that skip this step ship the template's full weight and then blame "templates" for being heavy. The weight was optional.
Expert Note — The diff is your safety rail. Never let an AI agent write template edits directly to disk without showing a diff first. In this kind of work the agent moves fast across many files, and a single mis-scoped refactor can quietly rewrite structure you meant to keep. A two-minute diff review is the cheapest insurance in the workflow, and it is where you catch the wrong token, the dropped aria-label, or the over-eager abstraction.
Expert Note — Buy for the source, not the demo reel. Judge a template by opening its code, not by watching its showcase video. If the copy is hard-coded into components, if colors are inline hex, if there is no token sheet, that template will fight every adaptation regardless of how good the demo looks. AETumi templates ship full source and a build prompt specifically so the agent — and you — can restyle in place.

When to use a template

SituationWhy a template wins
Design-led launch on a deadlineStructure, motion, and fallbacks already built; you spend effort on brand
Layout is close to an existing patternAdapting is faster than reinventing a landing/product/portfolio shape
Small team, no dedicated a11y/perf ownerTemplate ships tuned defaults you preserve rather than author
You want AI to do most of the workAn agent restyles real source in place, section by section
You need to ship commercially and own the codeFull-source, buy-once templates carry no lock-in

When NOT to use a template

SituationWhy from-scratch wins
The interaction model is genuinely novelNo existing structure fits; a template becomes scaffolding you fight
The design itself is the productBespoke craft is the value; a shared starting point undercuts it
Your data model resists every layoutForcing data into a template's shape costs more than a clean build
Extreme performance or size budgetA minimal hand-built page beats a general-purpose template's baseline
A static image or short video would doNeither template nor custom 3D is warranted — use simpler tech

Decision matrix

FactorBlack-box templateFull-source template (adapt with AI)From scratch
Time to first pixelFastestFastSlowest
Ceiling on originalityLowHighHighest
Editability by AI agentPoorExcellentN/A (you write it)
Built-in a11y / perf defaultsVaries, opaquePresent, editableYou author all of it
Lock-in riskHighNone (you own source)None
Best forQuick internal pagesMost design-led launchesNovel or design-as-product work

How AETumi approaches it

AETumi is built for the middle column of that matrix. Every template ships as real React, Next.js and Three.js source with the content layer separated from the scene, design tokens exposed, and an AI build prompt included — so an assistant can restyle it in place rather than guess at a bundle. The AETumi MCP lets Claude Code, Cursor or Codex browse the library and install a component directly into your project, which is the adaptation pipeline from this guide made into a single instruction. The assets are buy-once, own-for-life: the Full Stack plan at $129 includes the full source and the MCP server, and every plan ($19 / $39 / $99 / $129) is a one-time purchase you own for life. See the pricing page and the docs for how each plan maps to the workflow above. The point is not that a platform replaces judgment in the templates vs from scratch decision — it is that when the answer is "adapt a template," owning editable source makes the adaptation genuinely fast and genuinely yours.

GitHub and technical proof

The claim that these templates are real, editable source is verifiable, not marketing: the open-source example repositories live at github.com/AETumiApp, covering Three.js scenes, WebGL backgrounds, React Three Fiber components, and MCP workflows. Read the component files and you will see the pattern this article recommends — content pulled into config, tokens exposed as CSS variables, scenes written as ordinary Three.js r160 ES modules with WebGL fallbacks. The honest limitation: the public repositories are examples, not the full commercial library, and they are meant to demonstrate implementation depth rather than to be a drop-in production kit on their own. Perf notes in the repos favor conservative defaults — capped pixel ratios, paused off-screen animation — the same defaults reflected in Demo 5 above. Treat the repositories as proof of how the templates are built, and the platform as where the complete, supported set lives.

What to prioritizeAETumi technical diagram — What to prioritizeRecommended priority weighting90Realreferences &85Component/3Dsource you own75Explicitconstraints70Performancebudget80Human review
What to prioritize

FAQ

When should I start from a template? When you need to ship fast, want vetted performance and accessibility defaults already built, and your layout is close to an existing pattern. That describes most design-led launches. The condition is that the template ships full source, so an AI agent can adapt it in place rather than working around a black box. Used as a starting layer and rebranded through tokens and config, a template produces a bespoke result faster than building from zero.

When is from-scratch actually worth it? When your interaction model is genuinely novel, when your data model resists every existing layout, or when the design itself is the product and bespoke craft is the value. These cases are real but rarer than they feel under the "templates look generic" reflex. If you can describe your page as a variation on a known pattern — landing, product, portfolio, docs — a template will almost always get you there faster.

Do I lose control or originality with a template? Not with a full-source template. You own the code and restyle it section by section, so the template is a head start, not a cage. Originality comes from the style and content layers, which are entirely yours; the shared part is structure, which visitors do not perceive as "generic" when the brand is distinct. Black-box templates are a different story — those do cap originality, which is why source ownership is the deciding feature.

How does AI change the templates vs from scratch decision? It removes the comprehension tax. Previously, adapting an unfamiliar codebase could be slower than writing your own, so from-scratch was often the safe choice. An AI agent reads the whole template instantly, explains any part, and applies scoped edits across files — so adaptation is now usually faster than a clean build for design-led work. The remaining requirement is readable source and a human reviewing the diffs.

Conclusion

The templates vs from scratch question is settled by asking where your custom effort belongs, not by fearing that a shared starting point looks generic. For the large majority of design-led sites, a full-source template adapted with an AI coding assistant ships a distinctly branded result faster than building from zero — because structure is reused, style and content are rewritten, and the agent does the reading that used to make adaptation slow. Reserve from-scratch for genuinely novel interactions and design-as-product work, and reach for simpler tech when a static image or short video would say the same thing. Ready to start from a layer instead of a blank page? Browse the 3D website templates at aetumi.app and adapt one with the AETumi MCP — buy once, own for life.

More from the AETumi library

Real, production-ready assets — preview the motion, grab the source.

Browse all 3D website templates →