Skip to content
UI Kit
Accent color

Coworking

For coworking spaces and shared offices. Plans by team size, room booking on a time axis, amenities on the floor plan, a day pass and locations with live occupancy.

5 variants
Switch category

Coworking

Plans

A team size slider picks the plan that fits, it lifts and gets the label, the monthly total for the team glides along.

Open in Studio

Room booking

All rooms on one time axis, booked hours hatched. Tap a start and an end, the selection glides into place and the summary prices it.

Open in Studio

Amenities

Pins pop onto the floor plan when it scrolls in, the active one pulses. Hover or tap a pin or the list to read about it.

Open in Studio

Day pass

Pick a day, people and extras, the price glides. After paying a ticket with a code pops in.

Open in Studio

Locations

Sites on a map with labelled pins, a list with how busy each one is right now. The bars fill when they scroll in, hover links list and map.

Open in Studio

Details

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

Variants
5
Version
1.0.0 · since 1.1.0
File
components/ui/coworking.tsx
Brings along
utilskitbuttoniconrevealsectionmotionslider
npm packages
None
Languages
English and German, 42 texts of its own

Props

The CoworkingProps interface from components/ui/coworking.tsx, with the comments from the code.

  • variantoptional
    CoworkingVariant

    plansroom-bookingamenitiesday-passlocations

  • eyebrowoptional
    React.ReactNode
  • titleoptional
    React.ReactNode
  • descriptionoptional
    React.ReactNode
  • plansoptional
    CoworkPlan[]
  • roomsoptional
    CoworkRoom[]
  • openoptional
    [number, number]

    room-booking: opening hours as whole hours

  • amenitiesoptional
    CoworkAmenity[]
  • planoptional
    React.ReactNode

    amenities: the plan picture the pins sit on

  • passPriceoptional
    number

    day-pass

  • passExtrasoptional
    { id: string; title: string; price: number; icon?: IconName }[]
  • passIncludesoptional
    string[]

    day-pass: what every pass includes

  • daysoptional
    string[]
  • codeoptional
    React.ReactNode

    day-pass: the code picture shown after buying

  • locationsoptional
    CoworkLocation[]
  • mapoptional
    React.ReactNode

    locations: a map picture the pins sit on

  • currencyoptional
    string
  • onBookoptional
    (data: Record<string, string>) => void

Built-in texts

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

Show all 42 texts
teamEnglish Team sizeGerman Teamgröße
peopleEnglish {n} peopleGerman {n} Personen
personEnglish 1 personGerman 1 Person
perPersonEnglish per person / monthGerman pro Person und Monat
teamTotalEnglish a month for your teamGerman im Monat für dein Team
fitsEnglish Fits {a} to {b} peopleGerman Passt für {a} bis {b} Personen
bestEnglish Best for your teamGerman Passt zu deinem Team
hoursEnglish {n} meeting room hoursGerman {n} Stunden Meetingraum
chooseEnglish Choose {plan}German {plan} wählen
roomsEnglish RoomsGerman Räume
seatsEnglish {n} seatsGerman {n} Plätze
seatEnglish 1 seatGerman 1 Platz
perHourEnglish {price} / hourGerman {price} / Std.
freeEnglish FreeGerman Frei
takenEnglish BookedGerman Belegt
selectedEnglish Your bookingGerman Deine Buchung
bookRoomEnglish Book a roomGerman Raum buchen
pickSlotEnglish Pick a start time, then an end time.German Wähle eine Startzeit, dann eine Endzeit.
hoursNEnglish {n} hGerman {n} Std.
bookEnglish Book {room}German {room} buchen
bookedEnglish {room} is yoursGerman {room} gehört dir
bookedTextEnglish {time}. The door code comes by email ten minutes before.German {time}. Den Türcode schicken wir zehn Minuten vorher per E-Mail.
againEnglish Book another roomGerman Weiteren Raum buchen
clearEnglish ClearGerman Zurücksetzen
dayEnglish DayGerman Tag
planEnglish Floor planGerman Grundriss
dateEnglish DateGerman Datum
guestsEnglish PeopleGerman Personen
fewerEnglish One lessGerman Eine Person weniger
moreEnglish One moreGerman Eine Person mehr
extrasEnglish ExtrasGerman Extras
payEnglish Buy pass for {price}German Pass für {price} kaufen
paidEnglish Your day passGerman Dein Tagespass
paidTextEnglish Show the code at the reception or scan it at the door.German Zeig den Code am Empfang oder scanne ihn an der Tür.
validEnglish Valid {date}, 8:00 to 20:00German Gültig am {date}, 8 bis 20 Uhr
newPassEnglish Buy another passGerman Weiteren Pass kaufen
loadEnglish {n}% takenGerman {n} % belegt
quietEnglish QuietGerman Ruhig
mediumEnglish BusyGerman Gut besucht
fullEnglish Nearly fullGerman Fast voll
desksEnglish {n} desksGerman {n} Plätze
toEnglish toGerman bis

Accessibility

Read from the source of the component.

  • Coworking handles the keys Arrow up, Arrow down, Arrow left, Arrow right and Space itself.
  • Sets aria-checked, aria-controls, aria-label, aria-live and aria-pressed, so screen readers announce purpose and state.
  • Uses the roles group, radio, radiogroup and status.
  • Announces changes through a live region without moving focus.
  • Every field has a label, visible or for screen readers.
  • Adds text for screen readers where icons and graphics stand alone.
  • 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. 2 places in the code switch motion off then.

Frequent questions

How do I install Coworking?

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

Which variants does Coworking have?

5 variants, Plans, Room booking, Amenities, Day pass and Locations. You pick one with the variant prop, for example variant="room-booking".

Can I translate the texts of Coworking?

Yes. Coworking carries 42 texts of its own in English and German, such as “Team size”, “1 person” and “per person / month”. The language follows the KitProvider, single texts change through the labels prop.

Can an AI assistant build with Coworking?

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

Can I adjust Coworking without code?

Yes, in the Studio. All 5 variants are editable there, texts, lists and switches. The Studio writes the matching Coworking code to copy.

Often searched

Jump to

Copied to the clipboard