Silex

June 29, 2026 · View on GitHub

Stars Issues License Good first issues

Silex — the visual builder for static sites

The web belongs to everyone. Silex is a free/libre visual website builder — no lock-in, no subscription, no tracking. Design visually, export clean HTML/CSS, host anywhere.

Try Silex online | Documentation | Desktop app — coming soon | Manifesto

Silex UI

Why Silex?

Most no-code tools lock you in: proprietary formats, forced hosting, subscriptions. Silex is different.

  • Your data is yours — standard HTML/CSS output, export everything, host anywhere, leave anytime
  • Real web skills — everything you learn in Silex (HTML, CSS, JAMstack) is transferable knowledge
  • Community-owned — maintained by Silex Labs, a non-profit recognized as being of general interest. No investors, no exit strategy, transparent finances
  • Free forever — always free software (AGPL), all features included, no premium tier

"The only open source alternative to Webflow.""The most powerful and graphically precise website builder that I have experienced."

Who is Silex for?

  • Web agencies — visual workflow, static output, scale client work without scaling your team
  • WordPress developers — visual frontend, content from WP via GraphQL, ditch the theme layer
  • Freelance webdesigners — create client sites without code, export standard HTML, host anywhere
  • No-code developers — go beyond Wix/Squarespace with full CSS control and no vendor lock-in

Features

  • GrapesJS-based visual editor — drag-and-drop page building with HTML, CSS, and JS editors
  • Static HTML output — fast, secure, easy to host anywhere
  • CMS integration — bind components to WordPress, Strapi, Squidex, or any GraphQL API
  • 11ty compatible — generate static sites from Silex templates, deploy with CI/CD
  • Desktop app (coming soon) — work offline, no account needed, AI-ready with built-in MCP server. Built with Tauri for Windows, macOS, Linux. Follow progress.
  • Plugin system — extend with server and client plugins in JS/TS
  • SEO tools — meta tags, Open Graph, per-page settings
  • Self-hosting — Docker, Node.js, or one-click deploy on CapRover

Quick start

Use it onlinev3.silex.me (free, requires a GitLab account for storage)

Desktop app (alpha)download for Windows, macOS or Linux. Work offline, no account needed.

Contribute

git clone --recurse-submodules https://github.com/silexlabs/Silex.git
cd Silex
pnpm install && pnpm build && pnpm start

Then open http://localhost:6805. For Docker and production setups, see the self-hosting guide.

Useful links to get you contributing fast:

See the Development section below for build and release workflow.

Development

How the repo is organized

This is a monorepo. The Silex app itself is a single package (one package.json, one build) — the editor, server and common code are not split into separate packages. The code is split by role:

FolderWhat it is
editor/the GrapesJS-based visual editor (browser); built with webpack
server/the Node.js server, storage/hosting connectors and server/deploy/ (SaaS / CapRover)
common/shared contracts and types, plus the plugin-config system
grapesjs-plugins/the first-party GrapesJS plugins — independently publishable packages (see Workspaces below) whose source the editor build compiles directly
server-rust/the Rust server library
desktop/the Tauri desktop app (embeds server-rust/ + the editor frontend)
silex-dashboard/, silex-dashboard-2026/the multi-site SaaS dashboards — git submodules (see Submodules below)

Cross-folder imports use path aliases (~/common, ~/editor, ~/server) — no ../../. The first-party plugins are imported by package name (@silexlabs/grapesjs-*), resolved to their source via webpack aliases (see Workspaces below). The Rust crates (server-rust/, desktop/) form a separate Cargo workspace.

Issues and pull requests all live in this single repository. A single branch can change several areas at once (e.g. the editor and one of its plugins).

Workspaces (the grapesjs-plugins/)

We use a pnpm workspace (pnpm-workspace.yaml) only for the plugins under grapesjs-plugins/* — to install, lint, test and publish them as independent packages. Two things to understand:

  • The Silex app build does not use the workspace. The editor compiles each plugin's source directly, resolved through webpack aliases + tsconfig paths (see webpack.config.js) — not through node_modules linking. So building/running Silex never depends on the plugins being installed as packages. The app's own install stays lean (pnpm install --filter @silexlabs/silex, as in Dockerfile).
  • The plugins are versioned and released independently. We deliberately do not use the workspace: protocol between them — a Silex release does not force a plugin release, and vice-versa. The only exception is @silexlabs/expression-input, a small internal lib used by grapesjs-advanced-selector and grapesjs-data-source: it is linked locally ("@silexlabs/expression-input": "workspace:*") so those plugins always build and test against its current source.

Per-plugin tasks (each plugin keeps its own package.json, build, lint and test):

pnpm test:plugins     # run each plugin's own test
pnpm lint:plugins     # run each plugin's own lint
pnpm build:plugins    # build each plugin (for publishing)
# or target one:  pnpm --filter @silexlabs/grapesjs-symbols run test

The plugins come from separate repos and still have heterogeneous toolchains (some scripts call yarn, some use web-test-runner). Normalizing them to pnpm and getting every plugin green is ongoing — contributions welcome.

Submodules (the dashboards)

silex-dashboard/ and silex-dashboard-2026/ are git submodules — they are content (multi-site dashboards built with Silex), not core code, so they live in their own repos and are pinned here. Clone with submodules:

git clone --recurse-submodules https://github.com/silexlabs/Silex.git
# already cloned? pull them in with:
git submodule update --init --recursive

The SaaS server serves the pre-built dashboard from silex-dashboard/_site (see server/deploy/server-plugins/dashboard.js). You don't need the submodules to develop the editor — only to run the full multi-site SaaS.

Day-to-day work happens on main — PRs target this branch. Releases are driven by git tags (see Releasing below).

Dev setup

git clone --recurse-submodules https://github.com/silexlabs/Silex.git
cd Silex
nvm install        # optional — uses version from .nvmrc
pnpm install       # install dependencies
pnpm build         # build the editor + server
pnpm start         # start the editor at http://localhost:6805

For the Rust side: cargo check (or cargo build) at the repo root builds server-rust/ and desktop/.

Working on the code

  1. Fork silexlabs/Silex on GitHub and add your fork as a remote:
    git remote add fork git@github.com:<your-username>/Silex.git
    
  2. Create a branch, edit the code (anywhere under editor/, server/, common/, grapesjs-plugins/, server-rust/, desktop/), commit and push to your fork:
    git checkout -b my-fix
    # ... make changes ...
    git commit -m "fix: description of the fix"
    git push fork my-fix
    
  3. Open a PR from your fork against silexlabs/Silex

Before pushing: pnpm lint and pnpm test (and cargo test -p silex-server for the Rust server) — these run in CI on every PR.

Releasing

main is deployed continuously to canary (canary.silex.me). Production releases are driven by git tags, in two independent channels (a server release never ships a desktop update, and vice-versa):

  • v* (e.g. v3.8.1) — server/web release: publishes the silexlabs/silex-platform Docker image and deploys to CapRover production (v3.silex.me).
  • desktop-v* (e.g. desktop-v1.2.0) — desktop release: builds the Tauri apps (macOS, Windows, Linux) and publishes the GitHub release with auto-updater metadata.

AI / Vibe coding

Design websites with AI — open, local, yours. Learn more

The upcoming Silex Desktop app will let you create and transform sites through prompts: describe what you want, see it built live, refine the design in real time, publish clean HTML/CSS anywhere.

Silex uses MCP (Model Context Protocol), an open standard — so you choose your AI. Run a local model with Ollama for full privacy, or use any MCP-compatible tool: OpenCode, Goose, Claude Code, etc. The MCP server is optimized for small local models (7B+).

See the vibe coding roadmap for what's coming (prompt library, examples cookbook, best practices guide — contributions welcome).

MCP setup (for developers)

Once Silex Desktop is running, connect your AI tool to:

http://localhost:6807/mcp

OpenCode — add an MCP server in your config file with URL http://localhost:6807/mcp.

Goose — add a remote server in your profile config with endpoint http://localhost:6807/mcp.

Claude Codeclaude mcp add --transport http silex http://localhost:6807/mcp

Any other MCP client — use a Streamable HTTP transport pointed at the same URL.

Contributors

Silex is the work of contributors from all over the world. This project is maintained by Alex Hoyau and owned by the non-profit Silex Labs

2026Alex Hoyau, Ola Mohamed, Syed Ishmum Ahnaf, Safal2004, Wassim Triki

2025Alex Hoyau, ceubri, Mazen Kamal, Piotr Golebiewski, oliviermgx

2024Alex Hoyau, oliviermgx, JeremyZXi, SuperDelphi

2023Alex Hoyau, Eskeminha, Ari Karageorgos

2022Alex Hoyau, Khaled Bentoumi

2021Alex Hoyau

2020Alex Hoyau

2019Alex Hoyau

2018Alex Hoyau, Jean-Baptiste Richardet, jotakar, swakarm

2017Alex Hoyau, Jean-Baptiste Richardet, Jenn Parker, Rapenne Solène, tariqbenezza, singchan

2016Alex Hoyau, singchan, Pierre Ozoux

2015Alex Hoyau, singchan, Christophe, Pierre Ozoux, René Föhring, christian-bromann

2014Alex Hoyau, Camille Gérard-Hirne, neocorp64, Michele Martone, peoslaap

2013Alex Hoyau, Yann Le Scouarnec, TheCause, yanhick, Thomas Fetiveau

Built on

Silex stands on the shoulders of these open-source projects and their communities:

  • GrapesJS — front-end drag-and-drop framework
  • 11ty (Eleventy) — static site generator used for CMS integration
  • Tauri — desktop app framework (Rust + WebView)
  • TypeScript — language used across packages

Funding

An OW2 project, funded by the NGI0 Commons Fund, supported by its sponsors and volunteers.

Credits

Brought to you since 2009 by Alex Hoyau and the Silex community.

Silex is free/libre software. Join the community, contribute, donate, or report bugs.