City of Juniper Falls: a self-hosted CMS for local government, on open-source .NET
A local city government website for a fictional Texas city: how do I... services, public meetings with agendas and minutes, the mayor and...
A credit union website for a fictional member-owned credit union: rates with an effective date, accounts and loans, branches and ATMs on a map, financial education, a security center with fraud alerts, the board and annual reports, and a members-only area for annual meeting documents, built on Raytha, an open-source .NET CMS for credit unions and community banks, by an AI agent with the CLI in under an hour.

A short, silent tour of the finished site, recorded from the real pages.
10 screens from the finished site, on desktop and on a phone. Use the arrow keys, swipe, or open any screen full size.
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 credit union
website: rates with an effective date, accounts and loans, branches and ATMs, financial education, a security center
with fraud alerts, the board and annual reports, and a members-only area for annual meeting documents.
If you are looking for a self-hosted CMS for credit unions or a CMS for community banks that runs on .NET, this is what a credit union's public website looks like on Raytha. The agent built it on a fresh Raytha 2.0.1 instance. Nobody opened the admin. Every template, content type, item, page, menu and function went in through the CLI, from files in a directory.
Kestrel Valley Credit Union is fictional. The rates, people, branches and documents are invented, and the site says so on every page.
A financial institution's public website is marketing, but it is also a place where rates, disclosures and fraud warnings have to be right, and where every outside vendor gets reviewed. The questions tend to be the same:
Raytha is a small open-source project, and it is not the right answer for every institution. If you want a vendor that hosts, supports and indemnifies the platform, a commercial CMS may fit better. For fair comparisons with the platforms banks and credit unions often run, see Raytha vs Kentico, Raytha vs DNN (DotNetNuke) and Raytha vs WordPress.
Kestrel Valley Credit Union is the website of a fictional member-owned credit union founded in 1958, with 48,600 members, four branches and three ATMs in a valley around the town of Harlow. The site has:
The design is calm and trustworthy: a deep teal header and hero with a mountain line, a warm off-white page, white cards, and a copper accent kept for the main buttons. Headings are set in Source Serif 4 and everything else in Figtree. Rates use tabular figures so the columns line up. The logo, illustrations, portraits and PDFs are generated by a script, so every image and document is license-free. On a 390px phone the navigation becomes a menu button, the rate board and tasks stack and the rate tables stay readable.
get_content_items, so a rate change is one edit and shows up
everywhere./feeds/rates.json, the rates as JSON for lobby
screens or a partner site, and /feeds/security.rss, the fraud alerts as RSS. Both take an optional filter, ?table= and ?level=.| Feature | How it is built |
|---|---|
| Branches, products, rates, articles, news, alerts, board members and documents | Eight content types from one schema document, with dropdowns for product type, rate table, rate type, article topic, alert level and document kind, checkboxes for featured products, active alerts and members-only documents, numbers for rates and map positions, dates, attachments for portraits, images and PDFs, a relationship field from rates to products, and rich text for bodies. |
| 70 seed items | Content import from JSON Lines. Rates point at their product by name, and the images and PDFs are uploaded during the import. |
| Site-wide scam warning | The base layout queries for alerts with the active checkbox ticked, on every page. |
| Rate tables, products by type, articles by topic, news by category, alerts, the board and documents | List views with Liquid templates. Products, articles and news read ?category= and ?topic= filters, and the rates list groups items into tables. |
| Product, branch, article, alert, board member, news and document pages | Detail templates per content type that pull related items with get_content_items. |
| Member area and members-only documents | A user group and templates that check CurrentUser.UserGroups. |
| Rates feed and security alerts feed | Two Functions (JavaScript) with HTTP triggers at their own routes, returning JSON and RSS. |
| Home, about, contact, accessibility, disclosures, loan calculator and search | Site pages built from 10 custom widget templates (hero with rate board, top tasks, page heading, member ownership, numbers, text, steps, questions and answers, contacts, loan calculator). |
| Navigation | Two menus: the main navigation and the footer. |
This is the brief, as given to the agent.
Build the public website of a fictional credit union on a fresh Raytha instance with the
raythaCLI. No clicking around the admin.
Look and feel
Content and pages
Done means
raytha check passes with no broken routes.Under an hour of agent time, from an empty install to raytha check passing on all 93 routes, including the visual
design, the generated illustrations and documents, the member area, the two feeds and writing all 70 items.
The theme, schema, seed content, image and document generator, page definitions, menus and feed functions are in the
raytha-examples repository,
with a build.sh that rebuilds the whole site into any Raytha 2.x instance. Run it against a Raytha install on
your own servers, or deploy Raytha on Railway from the template to try it
first, then replace Kestrel Valley with your own institution, rates and disclosures.
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.
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.
Free, open source and ready to deploy in minutes. Bring a brief and an AI agent.