Trades
For plumbers, electricians, roofers, tilers and painters. Services by area of the house, before and after, a quote request with estimate, an emergency service and materials.
Switch category
Marketing
- Hero17
- Features15
- Logo clouds8
- Stats8
- Pricing11
- Testimonials11
- Call to action11
- FAQ7
- Newsletter12
- Banners9
- Popups and consent7
- Services7
- Use cases6
- Security and trust7
- Changelog and roadmap6
- Launch and waitlist6
- Product tour6
- Press and awards10
- AI features6
- App download5
- Donations and support4
- Problem and solution5
- Objections5
- Calculators10
- Quiz and product finder5
- Free trial5
- Referral and partners10
- Community5
- Open source5
- Manifesto5
- Offer5
- Lead magnet4
- Scroll stories20
- Scroll journeys13
- Scroll effects13
- Scroll reveals and transitions15
Content
- Blog16
- Gallery7
- Team8
- About11
- Content8
- Process7
- Contact8
- Comparison5
- Integrations5
- Error pages5
- Careers7
- Case studies6
- Portfolio6
- Events and webinars6
- Help center6
- Legal pages5
- Documentation4
- Search results5
- Resources and downloads4
- Podcast4
- Editorial15
- Authors and interviews10
- Glossary5
- Recipes5
- Data stories10
- Long reads5
- Surveys and feedback14
- Form states12
- Request forms16
- Applications and sign-ups13
- Address, payment and consent12
App
- Authentication9
- Dashboards6
- Tables6
- Settings5
- AI and chat16
- Calendar5
- Inbox and messages5
- Notifications6
- Files6
- Projects6
- Profiles6
- Onboarding6
- Billing and usage10
- Developer settings15
- Security and access10
- Import, export and history15
- Automation and builders14
- AI answers18
- AI writing and creation13
- AI setup14
- AI assistants9
E-Commerce
Industries
- Menus7
- Appointments6
- Listings6
- Courses6
- Rooms and stays5
- Classes and schedules6
- Medical practice5
- Law firm5
- Salon and spa5
- Automotive5
- Travel5
- Sports club5
- Coworking5
- Museum5
- Cinema5
- School5
- Trades5
- Insurance5
- Banking5
- Personal brand15
- Speakers and media kits10
- Creators15
- Coaching and consulting10
- Artists and musicians15
- Dental practice5
- Veterinary practice5
- Therapy practice5
- Weddings and events5
- Architecture studio5
- Tax advisor5
- Estate agent5
- Florist5
- Winery5
- Daycare5
- Driving school5
- Care services5
- Festival5
Elements
- Buttons20
- Forms and inputs22
- Pickers and selections21
- Special input fields20
- Cards10
- Overlays21
- Navigation elements15
- Menu bars and switchers14
- Data display15
- Progress and states13
- Lists, trees and timelines17
- Charts22
- Comparison charts22
- Statistical charts20
- KPI, live and map charts22
- Text effects15
- Text accents16
- Backgrounds19
- Beams, particles and motion18
- Media19
- Code and JSON8
- Panels and splitters4
Trades
Installv1.0.0
aiw add @ai-website/tradesBrings along utils, kit, button, icon, reveal, section, motion, input, slider, image-compare
Usage
<Trades variant="emergency" phone="0761 555 0 112" responseMinutes={45} emergencies={[{ label, icon }]} coverage={["790", "791"]} fees={[{ label, price }]} />Source
Details
What Trades brings along, read from the registry and the source.
- Area
- Industries
- Variants
- 5
- Version
- 1.0.0 · since 1.1.0
- File
- components/ui/trades.tsx
- Brings along
- utilskitbuttoniconrevealsectionmotioninputsliderimage-compare
- npm packages
- None
- Languages
- English and German, 50 texts of its own
- Studio
- All 5 variants editable
- In collections
- Local business
- Build with AI
- Over MCP in Claude, Cursor, Copilot and Codex
Props
The TradesProps interface from components/ui/trades.tsx, with the comments from the code.
variantoptionalTradesVariantservicesbefore-afterquote-requestemergencymaterials
eyebrowoptionalReact.ReactNodetitleoptionalReact.ReactNodedescriptionoptionalReact.ReactNodehouseoptionalReact.ReactNodeservices: the house picture the pins sit on, and its areas
areasoptionalTradeArea[]projectsoptionalTradeProject[]optionsoptionalTradeOption[]quote-request
phoneoptionalstringemergency
responseMinutesoptionalnumberemergenciesoptional{ label: string; icon?: IconName }[]coverageoptionalstring[]emergency: postcode prefixes that are covered
feesoptional{ label: string; price: number }[]materialsoptionalTradeMaterial[]materials
currencyoptionalstringonSubmitoptional(data: Record<string, string>) => void
Built-in texts
Trades writes these texts itself. The language follows the KitProvider, the labels prop replaces single ones.
Show all 50 texts
| Key | English | German |
|---|---|---|
| areas | English Areas of the house | German Bereiche im Haus |
| from | English from {price} | German ab {price} |
| duration | English Duration | German Dauer |
| ask | English Ask about {area} | German Zu {area} anfragen |
| projects | English Projects | German Projekte |
| budget | English Budget | German Budget |
| place | English Place | German Ort |
| trade | English Trade | German Gewerk |
| before | English Before | German Vorher |
| after | English After | German Nachher |
| what | English What needs doing? | German Was soll gemacht werden? |
| size | English Size | German Größe |
| sqm | English {n} m² | German {n} m² |
| when | English When should we start? | German Wann soll es losgehen? |
| asap | English As soon as possible | German So bald wie möglich |
| months | English In 1 to 3 months | German In 1 bis 3 Monaten |
| later | English Later this year | German Später im Jahr |
| photos | English Photos of the room | German Fotos vom Raum |
| photosHint | English Optional, but it helps us quote more precisely. | German Freiwillig, aber so können wir genauer kalkulieren. |
| name | English Name | German Name |
| phone | English Phone | German Telefon |
| English Email | German E-Mail | |
| required | English Please fill in this field. | German Bitte füllen Sie dieses Feld aus. |
| invalidEmail | English Please enter a valid email address. | German Bitte geben Sie eine gültige E-Mail-Adresse ein. |
| estimate | English Rough estimate | German Grobe Schätzung |
| estimateNote | English Labour and material for an average job. The binding quote follows after a visit, free of charge. | German Arbeit und Material für einen durchschnittlichen Auftrag. Das verbindliche Angebot folgt nach einem kostenlosen Termin vor Ort. |
| send | English Request a quote | German Angebot anfragen |
| sent | English Your request is with us | German Ihre Anfrage ist bei uns |
| sentText | English We will call you within one working day to arrange a visit. | German Wir rufen Sie innerhalb eines Werktags an und vereinbaren einen Termin vor Ort. |
| again | English Send another request | German Weitere Anfrage senden |
| to | English to | German bis |
| available | English Technician available now | German Techniker jetzt verfügbar |
| response | English On site in about {n} minutes | German In etwa {n} Minuten vor Ort |
| call | English Call now | German Jetzt anrufen |
| emergencies | English We come at once for | German Wir kommen sofort bei |
| check | English Check your area | German Einsatzgebiet prüfen |
| postcode | English Postcode | German Postleitzahl |
| checkBtn | English Check | German Prüfen |
| inArea | English We cover {code}. Call now and we are on our way. | German {code} liegt in unserem Gebiet. Rufen Sie jetzt an, wir machen uns auf den Weg. |
| outArea | English {code} is outside our emergency area. A partner nearby can help, we will put you in touch. | German {code} liegt außerhalb unseres Notdienstgebiets. Ein Partner in der Nähe hilft, wir stellen den Kontakt her. |
| fees | English Emergency fees | German Notdienstpreise |
| pattern | English Pattern | German Verlegemuster |
| material | English Material | German Material |
| room | English Room size | German Raumgröße |
| total | English Including laying | German Inklusive Verlegung |
| perSqm | English {price} per m² | German {price} pro m² |
| sample | English Order a free sample | German Kostenloses Muster bestellen |
| grid | English Grid | German Raster |
| plank | English Planks | German Dielen |
| herringbone | English Herringbone | German Fischgrät |
Accessibility
Read from the source of the component.
- Trades handles the keys Arrow up, Arrow down, Arrow left and Arrow right itself.
- Sets aria-checked, aria-controls, aria-label, aria-live and aria-selected, so screen readers announce purpose and state.
- Uses the roles radio, radiogroup, status, tab, tablist and tabpanel.
- 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
- Rises in briefly the first time it comes into view (kit-rise, useInView).
- Moves with the scroll, its progress follows the position on the page.
- 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 Trades?
With aiw add @ai-website/trades. The command puts components/ui/trades.tsx into your project, the code is yours from then on. It brings along button, icon, reveal, section, motion, input, slider and image-compare. It needs no further npm packages.
Which variants does Trades have?
5 variants, Services by area, Before and after, Quote request, Emergency service and Materials. You pick one with the variant prop, for example variant="before-after".
Can I translate the texts of Trades?
Yes. Trades carries 50 texts of its own in English and German, such as “Areas of the house”, “Duration” and “Projects”. The language follows the KitProvider, single texts change through the labels prop.
Can an AI assistant build with Trades?
Yes. Through the MCP server of the aiw CLI, Claude, Cursor, GitHub Copilot, Windsurf, Codex and Gemini find Trades with aiw_components and install it with aiw_add @ai-website/trades. Name the variant in your prompt, for example variant="services", and the assistant writes your content straight into the props.
Can I adjust Trades without code?
Yes, in the Studio. All 5 variants are editable there, texts, lists and switches. The Studio writes the matching Trades code to copy.
Similar components, Often combined with
Similar components
More from Industries, the same area of the kit.
- SchoolProgrammes, application, school year, teachers and open day.
- InsuranceTariff calculator, real situations, claim reporting, products and advisor finder.
- CinemaShowtimes, seat picker, film page, coming soon and prices.
- BankingAccounts, cards, fixed deposit rates, savings goal and account switch.
- All of IndustriesReady sections for practices, restaurants, trades, hotels, schools, clubs and creators.
Often combined with
Sections that usually sit next to Trades on a page.
Loading the source