Skip to contentDiscuss your project
Bleier Solutions
+43 677 61817457Discuss your project
Discuss your project

I measure anonymously which pages are read, with Google Analytics. Without your consent this does not happen, and the site works just the same.

What is measured

Concept project2026

Demo: Brunnwieser Plumbing and Heating

A before/after demo for trade businesses: a plumbing and heating site as it stood in 2013 and its new version with an AI assistant and a subsidy calculator, both live.

Concept, design, development

Before and after

Both versions are live, side by side. A click on either frame opens it to click through.

The problem

A plumbing and heating business sells on trust and on being reachable, and neither appears anywhere on most sites in this trade: the emergency number only after scrolling, nothing usable on a phone, questions about subsidies left unanswered. That a website assistant is more than a chat window full of canned phrases is something nobody believes without an example.

The solution

An invented business in Feldkirchen in Carinthia, built twice. The old version reproduces a site from 2013 with fixed width and a boxed navigation. The new one has five pages, an assistant running on a real language model, a subsidy and heating-replacement calculator and a before/after project gallery. Both versions are live; a bar at the top switches between them.

Built with

Next.js · TypeScript · Tailwind CSS · Cloudflare Workers · D1 · KV · OpenRouter · Playwright

The result

100

Lighthouse on all five pages of the new version

57

automated tests

0

contact details through the language model

  • Lighthouse 100/100/100/100 on all five pages of the new version, axe without a single violation.
  • The assistant answers through a real language model, capped at ten requests per address per ten minutes and three hundred a day for the whole demo; once the limit is used up, a polite note appears in the answer bubble instead of an error.
  • Contact details never pass through the language model: name, phone and email go to an endpoint of their own and into the database, and the model only learns that an inquiry is being taken.
  • From the old heating system, the year built, the floor area and the target system, the calculator estimates the investment, the federal and provincial share, the cap and what is left to pay, as pure calculation kept apart from the display.
  • 57 automated tests: 25 Playwright checks on the new version including axe, 18 against the worker interface, 7 on the calculation logic and 7 on the old version.
  • Live at demo.bleier-solutions.com/installateur/, the before version at /installateur/alt/. The demo itself is in German.

What there is to see

Before · After

All names, prices and reviews are invented. The business does not exist.

What the new version does differently

The emergency number and the inquiry stand at the top, not in the legal notice. The assistant answers questions about replacing a heating system, heat pumps and subsidies within the business data it was given, and when there is real interest it takes down the request, the name and a callback wish in a structured form. The calculator returns an estimate from four entries and says outright that its rates are invented. Chat and calculator are operable by keyboard and checked against axe.

What carries over from it

The split is the actual proof: the model may answer questions about the trade, and it never sees personal data. The same division holds for any assistant meant to take inquiries without a processor abroad reading the contact details along the way. Subsidy data, the sending of inquiries and the customer portal are connected up in a real project; here they are invented.

Something like this for your business?

Write a few lines about what it is about. Within one working day you get an assessment with a price range and a duration.

Discuss your projectAll projects

AI assistant

You are chatting with an AI. No conversation history is stored. Privacy policy

Hello! Tell me briefly about your project and I'll work out a price estimate, or give me the address of your existing website for a quick check.