Platform CLI Use cases
Learn
Developer docs User guide Quickstart CLI and AI agents Blog
Company
Services About Contact Links Get started
Government and public sector

Carrow Bend Water: a self-hosted CMS for water utilities — a .NET CMS for a local water utility website

A local water utility website for a fictional water and sewer district: pay-a-bill and start/stop service pages, service alerts and outages that stay published when resolved, water quality reports in plain language, rates and fees as a table, board agendas and minutes, and conservation guides. Built on Raytha, a self-hosted, open-source .NET CMS for water utilities, by an AI agent with the CLI in under an hour.

Build time
Under an hour
Built with
Raytha 2.0.1 and the raytha CLI 0.1.1
Industry
Government and public sector
Rebuild
One script, from GitHub
Carrow Bend Water: a self-hosted CMS for water utilities — a .NET CMS for a local water utility website
Walkthrough

See it in action

A short, silent tour of the finished site, recorded from the real pages.

Silent walkthrough, 1080pOpen the MP4
The site

Take the tour

10 screens from the finished site, on desktop and on a phone. Use the arrow keys, swipe, or open any screen full size.

01 / 10Home: check the water before you call — status cards, an active boil notice, and the four customer actions
The write-up

For each Raytha use case we take a realistic brief, hand it to an AI agent with the raytha CLI, and publish what comes out: the site, the files behind it, and a kit you can use to rebuild it yourself. This one is a local water utility website — a small special district where residents need to pay a bill, check an outage, and read water quality results, often on a phone, often in a hurry.

If you are looking for a self-hosted CMS for water utilities or a .NET CMS for a local water utility website, this is the kind of site that fits: service alerts as structured content, water quality reports summarized in plain language, rates as a real table, board agendas and minutes, start/stop service, and conservation guides. Built on a fresh Raytha instance, server-rendered, with no client-side app in the layout.

Carrow Bend Water & Sewer District is fictional. The town of Carrow Bend, the Ossel River, the board, rates, alerts and quality figures are invented (and labeled "story" on the site), and the site says so on every page. There is no real payment form, no customer account, and no customer data collected — the pay page explains the ways a real district would take payment and deliberately charges nothing.

A different kind of utility site

This example was designed from scratch as a municipal operations hub, not a brochure and not a generic government template. The homepage answers the four jobs residents actually arrive with, before any marketing copy:

  • Check the water before you call. Status cards on the home page — system normal, one active boil notice on two blocks, latest pH, first-tier price per 1,000 gallons — plus an amber alert bar that names the active notice.
  • Four customer actions up front. Pay a bill, report a problem, start/stop service, and rates & fees are cards, not menu archaeology. Each lands on a page with the real (story) amounts, timing and policies.
  • Alerts that stay published. Active, scheduled and resolved alerts are dated, area-specific, and each carries a "what to do" panel. Resolved events keep a one-paragraph cause, so a resident who noticed low pressure can find out why.
  • Quality in plain language first. Annual and quarterly reports lead with a summary and key results (pH, chlorine, turbidity, lead/copper) before any lab detail — no hunting through a scanned PDF.
  • Rates as a table, not a PDF. Every tier, sewer charge, tap fee, deposit and late fee is a searchable web table, adopted at a (story) rate hearing whose minutes are also published.
  • Board meetings that explain decisions. Agendas before, minutes after, with rate votes and capital projects named in the summary.
  • Save-water guides with a payoff. A ten-minute toilet-leak test, reading your own meter, yard watering, and winterizing — each with a typical saving and difficulty.

Design: operations hub, not brochure

The design language is a utility control room softened for residents: deep teal and aqua, an amber stripe reserved for alerts, white cards with a status-color top edge, and big tabular numbers. Status is never shown by color alone — every pill says ACTIVE, SCHEDULED or RESOLVED in words, because a boil-water notice has to work for color-blind residents and on a black-and-white printout. Generated line art (treatment plant, water tower, river, meter) means no real town, plant or person is pictured.

Why a water utility looks for a self-hosted CMS

  • Alerts cannot wait on a vendor. A boil notice, outage or flushing schedule has to be publishable by office or operations staff in minutes, dated, and later markable resolved without deleting the record.
  • Public records should be searchable. Quality reports, rates and board minutes are the most-asked-for documents a district has. As structured content they are findable by search and readable on a phone, instead of living as scanned PDFs.
  • You own the record. Content types, templates and content as files mean the site can be moved, rebuilt or handed to another developer. Districts keep records for decades; the website should be built like it.
  • A .NET stack, if that is your world. Raytha is ASP.NET Core with Liquid templates and PostgreSQL — plain HTML and CSS in templates, rendered on the server, working without JavaScript.

Raytha fits water utilities and other local districts that want to own their stack: the code is open source, the content model is yours, and you can run it on your own infrastructure. If you would rather not run it yourself, Raytha can be fully hosted and managed for you under contract. Where another platform may suit you better is if you need a large plugin marketplace, or an all-in-one marketing suite with CRM and marketing automation built in. For fair comparisons with platforms .NET teams often evaluate, see Raytha vs Kentico, Raytha vs DNN, Raytha vs Umbraco and Raytha vs WordPress.

What is in the kit

Four content types (service alerts, water quality reports, board meetings, conservation guides), site pages for Pay a bill, Start/stop service, Rates & fees, Report a problem, About the board, About and Accessibility, menus and search — all rebuildable with one command from the kit in the examples repository. Route check: 36 routes checked, 0 failed.

One-line summary: a municipal operations-hub website for a fictional local water utility, where alerts, water quality, rates and board minutes are structured, searchable content — and paying a bill starts with plain information, not an account wall.

Run it yourself

Run this on your own Raytha

Raytha is free and open source (MIT). Deploy your own copy on Railway, with PostgreSQL included, then load this site into it from the rebuild kit.

  1. Deploy RaythaThe Railway template sets up Raytha, PostgreSQL and a volume for uploads. Open the new site and create your administrator.
  2. Create an API keyIn the admin: People, Admins, open your account, then Create API key.
  3. Import the kitInstall the Raytha CLI, set RAYTHA_URL and RAYTHA_API_KEY, and run the kit's build.sh on the fresh site.

Prefer your own server? Raytha also runs with Docker.

Share Post LinkedIn

Build yours on Raytha

Free, open source and ready to deploy in minutes. Bring a brief and an AI agent.