Web & Apps · Service

    Websites.
    In the right stack.

    A single landing page, or an information website of up to 10 pages, written in React and TypeScript. Built in Vite, Next.js, Astro or TanStack Start, and deployed from a repository with your name on it.

    See the stores
    At a glance
    From R 2,599
    Single page R 2,599. Up to 10 pages R 12,999.
    0+
    Projects since 2019
    0+
    Lighthouse target
    CHOOSING THE STACK

    Four stacks.
    One price.

    All four are React and TypeScript. What differs is how a page reaches the visitor, and what the site can grow into. The scope names the stack and the reason.

    Best for
    Vite
    A landing page or a small site
    Astro
    Sites that are mostly pages to read
    Next.js
    Sites that change per visitor, or grow into an app
    TanStack Start
    Sites with typed routing and server logic
    How a page arrives
    Vite
    Built in the browser from static files
    Astro
    Finished HTML, almost no JavaScript
    Next.js
    Finished HTML, rendered per page or per visitor
    TanStack Start
    Finished HTML, rendered on the server
    Search engines
    Vite
    Reads the page once it runs
    Astro
    Reads finished HTML
    Next.js
    Reads finished HTML
    TanStack Start
    Reads finished HTML
    Hosting
    Vite
    A folder of static files
    Astro
    A folder of static files, or a light server
    Next.js
    Vercel, Cloudflare or a Node server
    TanStack Start
    Cloudflare, Vercel or a Node server
    Price
    Vite
    R 2,599 single page, R 12,999 up to 10 pages
    Astro
    R 2,599 single page, R 12,999 up to 10 pages
    Next.js
    R 2,599 single page, R 12,999 up to 10 pages
    TanStack Start
    R 2,599 single page, R 12,999 up to 10 pages
    WHAT'S INCLUDED

    Every page. Every state.

    Listed in the written scope before a line of code is written.

    The website
    01
    React and TypeScript, in Vite, Next.js, Astro or TanStack Start
    02
    Single page (R 2,599): one page, designed in Figma at phone and desktop widths, with two revision rounds
    03
    Information website (R 12,999): up to 10 pages on up to 3 templates, with two revision rounds
    04
    A contact form, sent to your email
    05
    Header, navigation, footer and a 404 page
    Content and search
    01
    Your copy and images set into the design. Copywriting and photography are quoted separately
    02
    Images converted to WebP and sized per screen
    03
    Title, description and social image on every page
    04
    Sitemap and robots.txt
    05
    Content held in the code, editable by any developer. A CMS is quoted in writing
    Handover
    01
    Repository in your GitHub, with a README a new developer can follow
    02
    CI/CD: a preview URL for every change, production on merge
    03
    Deployed to Cloudflare Pages, Vercel or the hosting you already use
    04
    Lighthouse reports for the main pages
    05
    A 30-day window after launch for fixes to anything delivered
    WHAT IT COSTS

    From R 2,599. In writing.

    A single page is R 2,599. An information website of up to 10 pages is R 12,999. The same prices apply in Vite, Next.js, Astro and TanStack Start. More pages or templates, copywriting, photography and a CMS are quoted in writing before work starts.

    R 0,599
    Single-page website
    One page, two revision rounds, deployed and handed over.
    R 0,999
    Up to 10 pages
    Up to 3 templates, two revision rounds. More pages are quoted in writing.
    0–4 wk
    Typical plan
    From signed scope to launch. The scope sets the date.
    HOW LONG

    Four phases. Each signed off.

    A typical plan. A single page moves through it in a week or so. The number of pages and the content to move set the rest.

    01
    Week 1

    Requirements

    Pages, templates and content agreed in writing. Stack and hosting chosen.

    02
    Weeks 1–2

    Design

    Every template in Figma, at phone and desktop widths, approved before the build.

    03
    Weeks 2–3

    Build

    Components first, then pages, pushed to preview URLs you can open any day.

    04
    Week 3 onward

    Launch

    Forms tested, Lighthouse run, production and handover.

    IF IT GOES WRONG

    Every change gets a URL.

    Before it reaches production.

    01

    Preview before production

    Each change deploys to its own address. Production updates after it has been checked.

    02

    Rollback in one step

    Every deploy is kept. A bad release is reversed without waiting for a fix.

    03

    Accounts in your name

    GitHub, hosting and third-party services are opened by you and belong to you from the first day.

    04

    Code that outlives anyone

    Your repository, in React and TypeScript, documented. Any React developer can pick it up.

    05

    Scope in writing

    Pages, templates and integrations are listed before the build. A change is priced before it is made.

    06

    Bugs fixed

    Anything in the delivered scope that does not work as agreed is fixed as part of the build.

    WHO IT'S FOR

    Websites. Not apps behind a login.

    If the second list sounds like you, another page here fits better.

    A website build fits

    • 01
      A landing page for a launch or a campaign

      One page, live in about a week, with a form that reaches your inbox.

    • 02
      An information website

      Home, about, services, work and contact: up to 10 pages in one build.

    • 03
      A founder's first website

      A clear page that says what you sell, who it is for and how to reach you.

    • 04
      An existing React, Next.js or Astro codebase

      Extended or refactored, quoted in writing after a read of the repository.

    Look at another page first

    • 01
      There are accounts, a database or a dashboard

      That is a web application. Web Apps, CMS & Expo starts at R 25,499.

    • 02
      It is a shop

      A Shopify theme, or a headless storefront, carries the catalogue and the checkout.

    STANDARDS YOU CAN CHECK

    Written down. Handed over.

    Each one is checked before launch, and the evidence comes with the repository.

    01

    TypeScript throughout

    No plain JavaScript files in the source. The build fails on a type error.

    02

    Lighthouse 90+ on a phone

    Performance and accessibility measured on the main pages. The reports come with the handover.

    03

    Code split by route

    Each page loads its own code. The first page does not wait for the rest.

    04

    Dimensions on every image

    Width and height are set, so the page does not jump as pictures load.

    05

    Keys out of the repository

    Secrets live in environment variables on the host. None are committed.

    06

    Keyboard and screen reader

    Menus, dialogs and forms work without a mouse, with labels and visible focus.

    BUILT IN REACT

    One React build. Open it.

    The case file shows the framework, the checkout and how the pages load.

    Web
    Core Table

    A shop, a membership and training programmes for 13 sports, in one React application.

    BuiltReactTanStack Start
    BEFORE YOU BRIEF

    The questions founders ask first.

    R 2,599 is a single-page website: one page, designed at phone and desktop widths, with two rounds of design revisions, deployed and handed over with a written README. R 12,999 is an information website of up to 10 pages on up to 3 templates, with the same revisions and handover. You supply the copy and the images. More pages, more templates, or copywriting and photography are quoted in writing before any work starts. The price is the same in every stack.
    Vite, Next.js, Astro or TanStack Start, with React wherever a component is needed. Vite builds a site that runs in the browser: quick builds, and hosting that is a folder of static files. When pages have to arrive as finished HTML for search engines, Next.js, Astro or TanStack Start is the better fit. The scope names the stack and the reason, and the price does not change.
    Astro, when the site is mostly pages to read: articles, a brochure, a portfolio. It sends finished HTML and very little JavaScript. Next.js, when pages change per visitor or the site is growing into an application: logged-in views, personalised pages, server logic. TanStack Start sits between them, a full React framework with typed routing. If it is a simple landing page, Vite is enough.
    A website of pages to read does not. A contact form is sent by email or to a form service. If you need accounts, a database or a dashboard behind a login, that is a web application, which starts at R 25,499 under Web Apps, CMS & Expo.
    Yes, in React, Next.js, Astro or TanStack Start. It starts with a read of the repository and a written list: what stays, what is refactored, what is replaced, and what each part costs. The quote is in writing before any work starts.
    You do. The repository is created in your GitHub from the first commit, and hosting and third-party accounts are opened in your name. If you move to another developer, they start with the full history and a README.
    Cloudflare Pages, Vercel, or the hosting you already use. A website is a set of static files or a light server, so it sits on the smallest plans most hosts offer. The provider bills you directly, and the scope states the expected running cost.
    Yes. Components are built once and reused, each documented with the props it takes. The README covers cloning, running, testing a change on a preview URL and deploying.
    Anything in the delivered scope that does not work as agreed is fixed as part of the build. Further pages and changes are quoted in writing, or your own developers take over with the README.

    Your pages.
    Your site.

    A 30-minute call about the site. A written scope after it.

    See pricing