Skip to content
UI Kit
Accent color

Club and bar website sections

For clubs, bars and live venues. Upcoming nights with drawn posters, the line up per floor on a timeline, tickets in release phases and a guest list with an entry code.

4 variants
Switch category

The night before it starts

People open a club website to see who plays, when and whether they still get in. These sections answer on the first screen, with drawn posters, a timeline past midnight and tickets that show what is left in each phase. Each one has its own phone layout, because that is where the night gets planned.

Upcoming nights lists events with a genre filter, pointing at a night brings its drawn poster to the side, and on phones every row carries a small poster. Line up places every set per floor on one timeline, on phones the floors become a switch. Tickets shows release phases from sold out to next, the live phase pulses and its bar shows what remains. Guest list takes the night, a name and the number of friends and returns an entry code with the time the list closes.

Keep the next three nights on the home page and the full program one click away. Publish set times as early as you can, that is the question asked most at the door. A guest list with a clear closing time keeps the queue short.

Nightlife

Upcoming nightsNew in 1.2

Nights as a calm list with a genre filter, rows rise in one after another. Point at a night and its drawn poster takes the side, light beams sweep across it. On the phone each row carries a small poster.

Line upNew in 1.2

The night per floor on one timeline with hours past midnight. The sets grow in floor by floor while scrolling. On the phone the floors turn into a switch and the sets into a list.

TicketsNew in 1.2

Release phases from sold out to next, the live phase pulses and its bar shows what is left. A drawn ticket with a torn edge sits next to the quantity, the total glides along.

Guest listNew in 1.2

Pick the night, add your name and how many friends come along. Missing fields say what they need, then an entry code for the door pops in with the time the list closes.

Details

What Nightlife brings along, read from the registry and the source.

Variants
4
Version
1.0.0 · since 1.2.0
File
components/ui/nightlife.tsx
Brings along
utilskitbuttoniconsectionmotion
npm packages
None
Languages
English and German, 36 texts of its own
Studio
Adjust in code

Props

The NightlifeProps interface from components/ui/nightlife.tsx, with the comments from the code.

  • variantoptional
    NightlifeVariant

    eventslineupticketsguest-list

  • eyebrowoptional
    React.ReactNode
  • titleoptional
    React.ReactNode
  • descriptionoptional
    React.ReactNode
  • eventsoptional
    NightEvent[]

    events, guest-list (the nights to choose)

  • floorsoptional
    string[]

    lineup

  • setsoptional
    NightSet[]
  • nightoptional
    string

    lineup: the night shown, e.g. "Saturday 21 November"

  • eventoptional
    { title: string; date: string; venue: string; doors: string; poster?: number }

    tickets

  • phasesoptional
    NightTicketPhase[]
  • maxTicketsoptional
    number
  • rulesoptional
    string[]

    guest-list: rules at the door, list closes at

  • listClosesoptional
    string
  • maxPlusoptional
    number
  • currencyoptional
    string

Built-in texts

Nightlife writes these texts itself. The language follows the KitProvider, the labels prop replaces single ones.

Show all 36 texts
genreEnglish GenreGerman Genre
allEnglish All nightsGerman Alle Nächte
doorsEnglish Doors {time}German Einlass {time}
fromEnglish from {price}German ab {price}
freeEnglish Free entryGerman Eintritt frei
hotEnglish Few leftGerman Fast weg
ticketsEnglish TicketsGerman Tickets
floorsEnglish FloorGerman Floor
timelineEnglish Running orderGerman Ablauf
phasesEnglish Release phasesGerman Preisphasen
soldOutEnglish Sold outGerman Ausverkauft
onSaleEnglish On saleGerman Im Verkauf
upcomingEnglish NextGerman Danach
leftShareEnglish {n} leftGerman noch {n}
quantityEnglish TicketsGerman Tickets
lessEnglish One ticket lessGerman Ein Ticket weniger
moreEnglish One ticket moreGerman Ein Ticket mehr
totalEnglish TotalGerman Gesamt
feeEnglish Including booking feeGerman Inklusive Vorverkaufsgebühr
buyEnglish Buy {n} ticketsGerman {n} Tickets kaufen
buyOneEnglish Buy 1 ticketGerman 1 Ticket kaufen
boughtEnglish Your tickets are in your inbox.German Deine Tickets sind in deinem Postfach.
boxOfficeEnglish Box office on the night, while tickets last.German Abendkasse am Abend, solange der Vorrat reicht.
nightEnglish Which night?German Welche Nacht?
nameEnglish Name on the listGerman Name auf der Liste
emailEnglish EmailGerman E-Mail
plusEnglish Friends with youGerman Freunde dabei
lessPlusEnglish One friend lessGerman Eine Person weniger
morePlusEnglish One friend moreGerman Eine Person mehr
rulesEnglish Good to knowGerman Gut zu wissen
joinEnglish Put me on the listGerman Auf die Liste setzen
requiredEnglish Please fill in this fieldGerman Bitte fülle dieses Feld aus
emailInvalidEnglish Please enter a valid email addressGerman Bitte gib eine gültige E-Mail-Adresse ein
onListEnglish You are on the listGerman Du stehst auf der Liste
onListTextEnglish Show this code at the door before {time}. Bring an ID for everyone.German Zeig diesen Code vor {time} an der Tür. Bring für alle einen Ausweis mit.
codeEnglish Entry codeGerman Einlasscode

Accessibility

Read from the source of the component.

  • Nightlife handles the keys Arrow up, Arrow down, Arrow left, Arrow right and Space itself.
  • Sets aria-checked, aria-describedby, aria-invalid, aria-label and aria-live, so screen readers announce purpose and state.
  • Uses the roles radio, radiogroup and status.
  • Announces changes through a live region without moving focus.
  • Every field has a label, visible or for screen readers.
  • Shows a visible focus ring when used with the keyboard.
  • The server renders the starting state in full, JavaScript only adds the interaction.

Motion

  • Brings animations of its own, calmly timed and without wobble.
  • With reduced motion (prefers-reduced-motion) it stays still. 4 places in the code switch motion off then.

Frequent questions

How do I install Nightlife?

With aiw add @ai-website/nightlife. The command puts components/ui/nightlife.tsx into your project, the code is yours from then on. It brings along button, icon, section and motion. It needs no further npm packages.

Which variants does Nightlife have?

4 variants, Upcoming nights, Line up, Tickets and Guest list. You pick one with the variant prop, for example variant="lineup".

Can I translate the texts of Nightlife?

Yes. Nightlife carries 36 texts of its own in English and German, such as “Genre”, “All nights” and “Free entry”. The language follows the KitProvider, single texts change through the labels prop.

Can an AI assistant build with Nightlife?

Yes. Through the MCP server of the aiw CLI, Claude, Cursor, GitHub Copilot, Windsurf, Codex and Gemini find Nightlife with aiw_components and install it with aiw_add @ai-website/nightlife. Name the variant in your prompt, for example variant="events", and the assistant writes your content straight into the props.

Often searched

Jump to

Copied to the clipboard