Zum Inhalt springen
UI Kit
Accent

Services

Was ein Betrieb anbietet, in sieben Aufbauten: Karten mit Preisen, Preisliste, Akkordeon, Detailzeilen mit Bild, Bento, Schritte zum Ergebnis und Anfrage mit Richtwert.

7 Variants
Kategorie wechseln

Leistungen

Leistungskarten

Sechs Leistungen mit Icon, zwei Punkten, Preis und einem Link über die ganze Karte.

Im Studio öffnen

Preisliste

Gruppiert wie eine Karte, mit Punktlinien, Dauer und einem Etikett für Beliebtes.

Im Studio öffnen

Akkordeon

Die Überschrift bleibt links, jede Leistung öffnet sich zu Details, Umfang und Zeitrahmen.

Im Studio öffnen

Detailzeilen mit Bild

Eine breite Karte je Leistung, Bild und Text wechseln die Seite, Dauer und Preis unten.

Im Studio öffnen

Bento

Fünf Leistungen als Mosaik, die wichtigste groß, jede mit Bild und Preis.

Im Studio öffnen

Schritte zum Ergebnis

Der Weg vom ersten Gespräch zur fertigen Leistung, mit dem, was am Ende in der Hand liegt.

Im Studio öffnen

Mit Anfrage

Leistungen wählen, den Richtwert mitlaufen sehen und eine geprüfte Anfrage senden.

Im Studio öffnen

Details

Was Leistungen mitbringt, aus Registry und Quellcode gelesen.

Bereich
Marketing
Variants
7
Version
1.0.0 · seit 1.0.0
Datei
components/ui/services.tsx
Bringt mit
utilskiticonsectionbuttonreveal
npm-Pakete
Keine
Sprachen
Englisch und Deutsch, 21 eigene Texte
In Sammlungen
Lokales Geschäft

Props

Die Schnittstelle ServicesProps aus components/ui/services.tsx. Beschreibungen stammen aus den Kommentaren im Code und sind auf Englisch.

  • variantoptional
    ServicesVariant

    cardsprice-listaccordiondetail-rowsbentostepswith-inquiry

  • eyebrowoptional
    React.ReactNode
  • titleoptional
    React.ReactNode
  • descriptionoptional
    React.ReactNode
  • actionsoptional
    React.ReactNode
  • itemsPflicht
    ServiceItem[]
  • stepsoptional
    ServiceStep[]

    steps: the way to the service

  • resultoptional
    { title: string; description?: React.ReactNode; points?: string[]; price?: string; action?: React.ReactNode }

    steps: what the client holds in the end

  • currencyoptional
    string

    with-inquiry: currency for the estimate, e.g. "EUR"

  • onInquiryoptional
    (data: { services: string[]; name: string; email: string; message: string }) => void

    with-inquiry: called with the form data. Without it the block only shows the thank-you note.

Eingebaute Texte

Diese Texte schreibt Leistungen selbst. Die Sprache folgt dem KitProvider, über die Prop labels ersetzt du einzelne.

Alle 21 Texte anzeigen
moreEnglisch DetailsDeutsch Details
includedEnglisch IncludedDeutsch Enthalten
durationEnglisch DurationDeutsch Dauer
priceEnglisch PriceDeutsch Preis
servicesEnglisch ServicesDeutsch Leistungen
stepEnglisch StepDeutsch Schritt
resultEnglisch ResultDeutsch Ergebnis
chooseEnglisch Choose servicesDeutsch Leistungen wählen
selectedEnglisch selectedDeutsch gewählt
estimateEnglisch EstimateDeutsch Richtwert
estimateNoteEnglisch A first figure, the offer follows after a short call.Deutsch Ein erster Wert, das Angebot folgt nach einem kurzen Gespräch.
nameEnglisch NameDeutsch Name
emailEnglisch EmailDeutsch E-Mail
messageEnglisch What should we know?Deutsch Was sollten wir wissen?
messagePhEnglisch A few words about your projectDeutsch Ein paar Worte zu deinem Projekt
sendEnglisch Send inquiryDeutsch Anfrage senden
sentEnglisch Thank you. We reply within one working day.Deutsch Danke. Wir antworten innerhalb eines Werktags.
pickOneEnglisch Pick at least one service.Deutsch Bitte wähle mindestens eine Leistung.
invalidEmailEnglisch Please enter a valid email address.Deutsch Bitte gib eine gültige E-Mail-Adresse ein.
requiredEnglisch Please fill in this field.Deutsch Bitte fülle dieses Feld aus.
noneEnglisch Nothing selected yetDeutsch Noch nichts gewählt

Barrierefreiheit

Aus dem Quellcode der Component abgeleitet.

  • Setzt aria-busy, aria-describedby, aria-invalid, aria-label und aria-live, damit Screenreader Zweck und Zustand ansagen.
  • Nutzt die Rollen alert und status.
  • Meldet Änderungen über eine Live-Region, ohne den Fokus zu verschieben.
  • Jedes Feld hat ein Label, sichtbar oder für Screenreader.
  • Ergänzt Text für Screenreader, wo Icons und Grafiken allein stehen.
  • Zeigt bei Bedienung mit der Tastatur einen sichtbaren Fokusring.
  • Der Server rendert den Startzustand vollständig, JavaScript ergänzt nur die Interaktion.

Bewegung

  • Erscheint beim ersten Sichtkontakt mit einem kurzen Auftritt (kit-rise, useInView).
  • Bewegt sich mit dem Scrollen, der Fortschritt folgt der Position auf der Seite.
  • Bringt eigene Animationen mit, ruhig getaktet und ohne Wackeln.
  • Bei reduzierter Bewegung (prefers-reduced-motion) bleibt sie ruhig. 15 Stellen im Code schalten Bewegung dann ab.

Häufige Fragen

Wie installiere ich Leistungen?

Mit aiw add @ai-website/services. Der Befehl legt die Datei components/ui/services.tsx in dein Projekt, der Code gehört danach dir. Mit dabei sind icon, section, button und reveal. Weitere npm-Pakete braucht sie nicht.

Welche Varianten hat Leistungen?

7 Varianten, Leistungskarten, Preisliste, Akkordeon, Detailzeilen mit Bild, Bento, Schritte zum Ergebnis und Mit Anfrage. Du wählst sie mit der Prop variant, zum Beispiel variant="price-list".

Kann ich die Texte von Leistungen übersetzen?

Ja. Leistungen bringt 21 eigene Texte auf Deutsch und Englisch mit, etwa „Details“, „Enthalten“ und „Dauer“. Die Sprache folgt dem KitProvider, einzelne Texte ersetzt du über die Prop labels.

Kann ein KI-Assistent Leistungen einbauen?

Ja. Über den MCP-Server der aiw CLI finden Claude, Cursor, GitHub Copilot, Windsurf, Codex und Gemini Leistungen mit aiw_components und installieren sie mit aiw_add @ai-website/services. Nenn im Prompt die Variante, etwa variant="cards", dann schreibt der Assistent deine Inhalte direkt in die Props.

Kann ich Leistungen ohne Code anpassen?

Ja, im Studio. Alle 7 Varianten lassen sich dort bearbeiten, Texte, Listen und Schalter. Das Studio schreibt den passenden Services-Code zum Kopieren.

Oft gesucht

Direkt zu

In die Zwischenablage kopiert