RideKit
Docs/Reference/Your public website

Your public website

The zip ships a complete public website in source/marketing-site/. It is the page a rider or a driver finds when they search for you: a fare estimate box, your services, where you operate, what driving pays, how a fleet partners with you, and the download links.

You never edit its code to change what it says. Every word, every sample number and the accent colour are edited in Admin → Website, and the site reads them on every request.

What you can change

Admin → Website lists the page's sections in the order they appear:

Section What it controls
Search & sharing The browser-tab title and the description search engines show
Colour The accent. Leave it on your brand colour unless you know why not
Headline The first sentence a visitor reads, and which word is highlighted
Booking box The fare-estimate box and the service tabs on it
Trust strip Four short claims under the headline
Fair fare How pricing works — upfront fares, and fare bidding if your market allows it
Services One card per service. Switch off what you do not offer
Coverage The "is my area covered?" check — type your areas, one per line
Drivers The driver pitch and the earnings calculator
Fleet partners The fleet-owner pitch and a sample dashboard
Business Corporate rides. Switch off until you offer them
Safety Your safety features
FAQ heading Only the heading — the questions come from FAQ in the sidebar
Download Store links and the three app cards
Footer Footer text, cities and link columns

Each section has Save and Reset to default. A section is either the shipped default or entirely yours: sections you never open keep improving with each release, and Reset takes one section back without touching the others.

The numbers on the page are samples

The fare-estimate box, the earnings calculator and the fleet dashboard show sample figures so the page works on day one. Every one of them is editable in the matching section, and the page says "sample" where it matters. Replace them with figures that are true for your city — a driver may decide to sign up on the strength of the calculator.

Anything in square brackets — [CITY], [Area 1], [XX] — is a placeholder for a fact only you know. The site is not finished until none are left. Search the admin for [ to find them.

The live preview

The right-hand pane in Admin → Website shows your site in preview mode and reloads after every save, so an edit is seen rather than assumed. Visitors see the same change within a minute.

For the pane to appear, the admin must know the site's address. Set it in the admin's environment before building:

NEXT_PUBLIC_SITE_URL=https://www.your-domain.com

(In docker-compose.prod.yml this is the NEXT_PUBLIC_SITE_URL build argument on the admin service.) Without it the pane explains what to set and everything else still works.

Deploying the site

source/marketing-site/ is a Next.js app. It needs one setting, the address of your API, and it is read at build time:

NEXT_PUBLIC_API_BASE=https://api.your-domain.com/api

The install kit's docker-compose.prod.yml already includes it as the sitetemplate service (build argument SITE_TEMPLATE_API_BASE). Point a hostname at it, put TLS in front, and set that hostname as NEXT_PUBLIC_SITE_URL in the admin so the preview works.

What the site does not do

  • It never shows a real fare. The estimate box computes from your sample rates so it answers instantly and works with the API down. Your apps quote real fares.
  • It never sends a booking. "See fare" is a demonstration; the download section is the call to action.
  • It never renders HTML you type. Angle brackets are refused on save, so nothing typed in the admin can become markup on your homepage.
source: docs/WEBSITE.md (ships identically in the product zip)