Launch Offer: up to 50% off

This item is 50% off: $24.50 instead of $49

Ends in
--
Days
--
Hrs
--
Min
--
Sec

DEV3 Siteloom – Website Builder SaaS Laravel Script with Section Editor, Templates, Custom Domains & Versions

A self-hosted multi-tenant website builder on Laravel 12 and Filament 4: a section editor, 24 templates, versioned publishing with rollback, custom domains, a blog, forms and an API. Web installer and demo data included. No mobile apps.

by DEV3 TechnologiesVerified Author(0) 0 sales 0 viewsUpdated 08 Nov 2026

Video tour. Pick a section below to browse 110 screenshots in 10 sections.

App & phone tours

Tap play to watch each app. Nothing downloads until you do.

  • Mobile web1:23

Siteloom is a multi-tenant website builder that you host yourself, built by DEV3 Technologies on Laravel 12 and Filament 4. Each customer is a workspace that builds one or more sites from 24 templates, edits them section by section, and publishes versioned snapshots to a subdomain or a custom domain. The demo town is the fictional Pellbridge, with a bakery, a physio clinic, a joinery, a design agency and eight more workspaces.

No live demo: the listing shows grouped screenshots and two video tours of the marketing site, the full-screen editor, publishing and rollback, domains, forms, the studio and the operator panel. Install it with the bundled demo data to try every role on your own server. This product has a web application only: there are no Flutter or native apps.

What your customers get

  • A section editor: forty block types (hero, features, services, pricing, team, gallery, menu list, events, FAQ, contact form, map, video and more), inline text editing, undo and redo, device widths of 1280, 820 and 390 pixels, autosave every three seconds and a merge prompt if two people save the same page.
  • 24 templates in eight kinds of business, each with four to seven pages, free-licence photographs and fictional copy to replace.
  • Theme tokens: colours with contrast warnings, twelve self-hosted fonts, corner radius, spacing and button style, plus scoped custom CSS that can never reach outside the site.
  • Pages and navigation: nested pages with automatic 301 redirects when a page moves, a navigation editor, per-page SEO with length hints, a sitemap, robots.txt, canonical addresses and LocalBusiness data.
  • A blog with scheduled posts, tags and an RSS feed, and forms that land in an inbox with spam scoring, email notification, CSV export and per-submission deletion.
  • Versioned publishing: every publish is an immutable version with a diff summary and a note. Preview any version, and roll back by creating a new version from an old one without touching your drafts.
  • Custom domains with TXT and CNAME records shown with copy buttons, a status timeline, scheduled checks, an SSL status chip and a primary domain that the other addresses redirect to.
  • Agency mode: up to thirty client sites in one workspace, a client viewer role limited to one site, and publish approvals.

For the operator

  • A Filament operator panel at /admin with workspaces, plans with trials and billing, a template library (import your own as JSON), reserved subdomains, abuse reports with one-click takedown and a domain registry, plus a Publish Board widget.
  • A REST API under /api/v1 with workspace keys, scopes and an OpenAPI document. Saving a draft needs the revision you read, so two writers cannot overwrite each other.
  • Four plans (Starter, Pro, Business, Agency) with live limits for sites, pages, storage, domains and members, and a downgrade rule that makes extra sites read-only instead of deleting them.

What is included

  • The Laravel application with Composer packages and compiled assets inside (no Node.js or Composer on the server), a web installer with demo or empty data, and HTML documentation including Caddy and nginx examples.
  • Demo data for twelve fictional workspaces with sites in every status, version history with rollbacks, custom domains in every state and form submissions.

Good to know

  • You need wildcard DNS and a TLS terminator. Siteloom routes by the Host header. The documentation shows a Caddy on-demand TLS setup and an nginx wildcard example. The SSL status in the studio is a check, not a certificate issuer.
  • Domain checks are simulated by default. A DNS driver that reads real records is included and switched on with one setting, but it was not run against real domains.
  • Images are resized on your server (GD, WebP variants), with no external CDN.
  • No commerce inside sites. Forms only collect leads. Tenants cannot connect their own payment account, and subscription billing uses the simulated gateway until you configure Stripe, Razorpay or PayPal.
  • Editor drag and drop is in the section outline. Below 1024 pixels the editor switches to a content mode with up and down buttons.
  • Arabic and right-to-left are supported per site and on the marketing home page; the studio and operator panels are English.
  • Name: Siteloom is a working name checked by a web search only, not a trademark clearance.
  • No hosted demo. The brand, people, businesses and addresses in the screenshots are fictional.

Quality checks

Siteloom 1.0.0 passed the seven release gates of the DEV3 Laravel suite on the final code: static analysis (Larastan level 6, 0 errors), 127 Pest tests with 1,555 assertions (a further three MySQL-only lock-order tests run separately), a front-end size budget (7.8 KB of JavaScript and 13.1 KB of CSS gzipped on public pages), migrations and seeding on MySQL 8 and SQLite, a headless-browser pass over 55 pages and 20 happy paths with six groups of parallel-request race checks on MySQL, an installer test from the package, and a secret scan. Lighthouse on a phone scored 98 for performance on the marketing home page and 100 for a published demo site.

How it's built

Architecture, stack, key decisions and the quality gates DEV3 Siteloom passed before release.

The engineering behind Siteloom: block schemas with migrations, revision-checked drafts, immutable publish snapshots, a CSS scoper, an allow-list sanitiser and host-based site resolution.

The problem it solves

A website builder serves strangers' code to the public. Pages must stay editable by two people, a publish must be a single consistent snapshot even while someone is typing, a rollback must never lose a draft, and a tenant's CSS, HTML or domain must never reach another tenant. All of it must hold up under parallel requests.

Architecture and approach

Siteloom is a Laravel 12 application with Filament 4 panels at /admin and /studio, a full-screen editor in Blade and Alpine, and a request middleware that serves published sites by host.

Blocks with schemas

Every one of the forty blocks has a JSON Schema, a Blade renderer and small pure migration functions. Drafts migrate when read and a publish always migrates and revalidates, so the renderer only knows current versions.

Drafts and snapshots

A draft save is an update where the revision equals the one you read, so a stale writer gets the server's blocks back. A publish locks the site row, reads every draft in page order and writes version N+1 as one JSON snapshot. Published pages render only from it.

Safe tenant content

One sanitiser covers rich text, embeds, SVG and head HTML. Custom CSS is parsed, vetted and prefixed with the site root.

Hosts and domains

A request host resolves to a custom domain, then a subdomain. The custom domain state machine is a pure function checked against test vectors, and parallel requests are covered by MySQL race checks.

Quality gates and results

Siteloom 1.0.0 passed the seven release gates of the DEV3 Laravel suite on the final code; the numbers are in the item description. MySQL race checks cover two saves of one revision, publishing against an autosave, two publishes at once, one host claimed by two workspaces, uploads past the storage quota, and two site creates on the last plan slot.

Tech stack

Area Technologies
Application Laravel 12, Filament 4, PHP 8.2, Alpine.js
Data MySQL 8, SQLite, JSON Schema
Quality Pest, Larastan level 6, Playwright

Inside the build

Hero: A bakery photo with the editor in front of it, and counters for templates, blocks and kept versions. Hero — A bakery photo with the editor in front of it, and counters for templates, blocks and kept versions.

Hero in dark mode: The same page with the night palette and the loom pattern behind it. Hero in dark mode — The same page with the night palette and the loom pattern behind it.

Guides & articles

Practical guides and engineering write-ups for DEV3 Siteloom.

Website builder software: 7 things to check before you pick one

Last updated
Website builder software: 7 things to check before you pick one: DEV3 Siteloom

A website builder is easy to demo and hard to run. The trouble shows up when a customer edits a page at the same moment as a colleague, pastes a script into a text box, or points a domain at the wrong address. Here are seven things to check before you pick software, with DEV3 Siteloom as the worked example.

Siteloom marketing site: a bakery photo with the editor in front of it

1. Can you undo a publish?

Look for versions, not just a "revert" button. Siteloom writes every publish as an immutable snapshot, shows a summary of what changed first, and rolls back by creating a new version from an old one. Drafts are left alone unless you ask for them to be reset.

The editor: the real site on the canvas, sections on the left, settings on the right

2. What happens when two people edit?

Each page draft has a revision number, and a save only succeeds if you saw the latest one. If someone saved first you get a merge prompt per section. A soft lock tells you who is on the page, and an owner can take over.

Version history with the live version marked

3. How does it deal with pasted code?

Text, embeds, SVG uploads and head HTML go through one allow-list. Custom CSS is parsed and every selector is prefixed with the site, so a rule cannot reach another site or the editor. @import, external urls and script tricks are refused with a line number.

A custom CSS rule refused with its line number

4. Do custom domains explain themselves?

The records are shown with copy buttons, a status moves from pending to verified to active, and a domain that fails three checks is marked failed and recovers on its own. Siteloom reports SSL status but does not issue certificates: you terminate HTTPS with Caddy or nginx, and the documentation says so.

The DNS records for a custom domain

5. Where do form leads go?

An inbox with spam scoring, notification emails that never lose a submission when mail fails, CSV export and deletion of a single entry on request.

6. What happens at a plan limit?

Limits are counted live. If a customer downgrades below their number of sites, the extra sites stay published but become read-only, and nothing is deleted.

7. Can an agency use it?

Thirty sites in one workspace, and a client role that sees one site and approves a publish. See the install notes for what you need on the server.

Video tour of Siteloom

Frequently asked questions

The complete source code (version 1.0.0) as a download from your account, with the setup and usage guides shown on this page. You can modify the code to suit your product.

Buying guides: Laravel scripts with Filament panels and a web installer · Next.js or Laravel for a SaaS script?

More from this author

View all

Related in Web Scripts & Software

View all