OPEN SOURCE

Convenience should not cost ownership.

The Flui control plane and dashboard are AGPL v3, and the manifest specification is Apache 2.0. Nothing is held back for a paid tier — the paid tiers sell support, not features, because gating features on an AGPL product would be neither enforceable nor honest.

Alongside them: the bootstrap scripts, the mail service, and framework starter templates for Next.js, Nuxt, Angular, SvelteKit, NestJS, Spring Boot, Django, FastAPI, ASP.NET Core, Vue, Astro and VitePress — all at github.com/flui-cloud.

What ownership means here, concretely.

The credentials are yours

Provider tokens are ones you issued and can revoke. Servers are created on your account and billed to you. Nothing is resold through us.

The installation is yours

The control plane runs on your machines. There is no Flui-side copy of your cluster state, no fleet manager, no mirror of your installation.

The description is portable

Applications are described by a manifest under a permissive licence. Your apps belong to the spec, not to a vendor — and the spec is published.

Leaving is an operation, not a project

The machines were already yours and keep running. Flui is the layer you remove, not the ground you stand on.

What is not open source

The guided install is proprietary. Here is why that costs you nothing.

app.flui.cloud — the service that builds a cluster on your cloud account in about seven minutes — is closed. It is also the narrowest possible thing: a funnel, not a control plane, not a fleet manager, not a mirror of your installation. Each of those was considered and left out.

No code is copied in either direction. It drives the published Flui CLI as a subprocess, which means every fix the managed path needs has to land upstream in flui-core, where self-hosted users get it too. The boundary is what keeps that true.

And it keeps nothing. No SSH authority, no kubeconfig, no provider credentials at rest. The bootstrap key is injected through the provider's own API, used, then deleted from the provider and from the machine. The cluster ends with SSH dormant, and the adoption token is never stored — not even hashed. It cannot mint access to a cluster it built, because it kept nothing that would let it.