Platform CLI Use cases
Learn
Developer docs User guide Quickstart CLI and AI agents Blog
Company
Services About Contact Links Get started
Music and entertainment

Low Tide Festival: a music festival site with a lineup, schedule grid and venue map

The website for a fictional three-day music festival: a lineup you can filter by day, stage and genre, a schedule grid for every stage, artist pages, a venue map and an FAQ, with ticket buttons that link to an external partner, built on Raytha by an AI agent with the CLI in about an hour.

Build time
About an hour
Built with
Raytha 2.0.1 and the raytha CLI 0.1.1
Industry
Music and entertainment
Rebuild
One script, from GitHub
Low Tide Festival: a music festival site with a lineup, schedule grid and venue map
Walkthrough

See it in action

A short, silent tour of the finished site, recorded from the real pages.

Silent walkthrough, 1080pOpen the MP4
The site

Take the tour

10 screens from the finished site, on desktop and on a phone. Use the arrow keys, swipe, or open any screen full size.

01 / 10Home page with a live countdown, the dates and the three headliners
The write-up

For each Raytha use case we take a realistic brief, hand it to an AI agent with the raytha CLI, and publish what comes out: the site, the files behind it, and a kit you can use to rebuild it yourself. This one is the website for a three-day music festival: the lineup, a schedule for every stage and day, a page for every artist, a venue map and an FAQ.

The agent built it on a fresh Raytha 2.0.1 instance. Nobody opened the admin. Every template, content type, item, page and menu went in through the CLI, from files in a directory.

What was built

Low Tide is a fictional festival on a sandy point by the sea, with 36 artists on four stages over three days. The site has:

  • A home page with a live countdown to the gates opening, the three headliners, a lineup poster for each day built from the content, a spotlight on sets worth catching, the four stages, visitor basics and an FAQ preview.
  • A lineup you can filter by day, stage and genre, in any combination. Every artist card shows the day, set time, stage and genre, and headliners stand out.
  • A schedule grid for each day: one column per stage, sets placed by start time and sized by length, so you can see clashes at a glance.
  • My picks. Tap the star on any artist, in the lineup, the schedule or on the artist's page, to add the set to your own schedule. Switch on "My picks" on the schedule to fade everything else out. Picks are saved in the browser, so there is no account to make.
  • A page for every artist with their artwork, day, set time and stage, a listen link, a bio and the sets that follow theirs that day.
  • A venue map drawn in SVG: the four stages pulse on the map and link to their own schedules, and gates, food, free water, first aid, toilets, lockers and the accessible viewing platform are pinned too. Pick a category in the legend to highlight only those places.
  • A page for each stage with its sets on each of the three days.
  • An FAQ grouped by topic, with a search box that filters as you type.
  • A tickets page with four passes and a "Plan your visit" page for transport, hours, what to bring and accessibility.

Tickets. The site sells nothing. Every ticket button, including the one in the menu, goes to an external ticketing partner, marked with an external-link icon and a note saying it is a placeholder link in this example.

The design runs from a night-blue sky to a sunset: coral, tangerine and sea-green on deep navy, with sand-coloured sections in between. The hero has a striped sunset sun and slow-moving waves. Headlines are set in Space Grotesk, a compact geometric sans, and text in Inter. Each artist's square artwork is generated from their name and genre as SVG, so every image is license-free. On a 390px phone the filters wrap, the cards go two across and the schedule scrolls sideways one stage at a time.

How the lineup, schedule and map work

All three come from the same four content types, so editing an artist's set time moves them on every page:

  1. Each artist has a day, a stage (a relationship field to the stage), a start time in minutes after noon, a set length and a poster line (1 for headliners).
  2. The lineup is a list view sorted by poster line. Its template reads ?day=, ?stage= and ?genre=, checks each one against the allowed values, and keeps the other filters when you change one.
  3. The schedule is a second list view on the same content type, sorted by start time. The template turns the start time and length into CSS grid rows (one row per 15 minutes) and puts each set in its stage's column.
  4. The venue map is a list view on the stages. Stages and venue places store their map position as two numbers, and the template places them over the SVG, so moving a food court is an edit, not a redesign.

Features, and the Raytha features behind them

Feature How it is built
Stages, artists, venue places and FAQs Four content types from one schema document. Artists use a relationship field to their stage, dropdowns for day and genre, number fields for set start, length and poster line, a checkbox for headliners and an attachment for the artwork.
66 seed items Content import from JSON Lines. Artists point at their stage by name, and the artwork is uploaded during the import.
Lineup with filters A list view with a Liquid template that combines ?day=, ?stage= and ?genre=.
Schedule grid A second list view on the artists, sorted by start time, laid out as a CSS grid from the number fields.
Venue map A list view on the stages; stages and places are positioned on an SVG map from their map coordinates.
Artist and stage pages Detail templates per content type. Stage pages list their sets for each day.
FAQ A list view grouped by a category dropdown, with search as you type in the browser.
Home, Tickets and Plan your visit Site pages built from 10 custom widget templates (hero with countdown, lineup poster, spotlight, stages, info cards, ticket passes, FAQ preview, call to action, page header, text with facts).
Navigation Two menus: the main menu and a footer menu. The footer also lists the stages straight from the content.

The brief

This is the brief, as given to the agent.

Build a website for a music festival on a fresh Raytha instance with the raytha CLI. No clicking around the admin.

Look and feel

  • Visually impressive, with a design of its own. No wide display fonts.
  • Responsive. It has to look good on a phone as well as a desktop.

Content and pages

  • A lineup with filters, a schedule by stage and day, and a page for every artist.
  • A venue map and venue information, and an FAQ.
  • No ticket purchasing. The ticket button goes to a placeholder external link.

Done means

  • raytha check passes with no broken routes.
  • Screenshots of the result on desktop and mobile, and a walkthrough video.
  • A kit in the examples repository that rebuilds the site on a fresh install.

How long it took

About an hour of agent time, from an empty install to raytha check passing on every route, including the visual design, the generated artwork, the schedule grid, the venue map and writing the 36 artists, stages and FAQ.

Rebuild it yourself

The theme, schema, seed content, artwork generator, page definitions and menus are in the raytha-examples repository, with a build.sh that rebuilds the whole site into any Raytha 2.x instance. Point it at your site with RAYTHA_URL and RAYTHA_API_KEY and run it.

Share Post LinkedIn

Build yours on Raytha

Free, open source and ready to deploy in minutes. Bring a brief and an AI agent.