Skip to main content

Flamingock Documentation

Flamingock brings Change-as-Code (CaC) to your entire stack.
It applies versioned, auditable changes to the external systems your application depends on — such as schemas, message brokers, databases, APIs, cloud services, and any other external system your application needs.

Unlike infrastructure-as-code tools, Flamingock runs inside your application (or via the CLI).
It ensures these systems evolve safely, consistently, and in sync with your code at runtime.

👉 For a deeper explanation, see the Introduction


🔎 What It Looks Like

A simple change in Flamingock:

@Change(id = "create-users-collection", author = "dev-team")
public class _0001__CreateUsersCollection {
@Apply
public void apply(MongoDatabase db) {
db.createCollection("users");
}
}

When your app starts, Flamingock applies this change and records it in the Audit Store.

🚀 Getting Started


🛠 Editions

EditionDescription
🟢 Community Edition (CE)Open-source, library only
☁️ Cloud EditionSaaS with dashboard, observability, and premium features (coming soon)
🏢 Self-Hosted EditionSame as Cloud, deployable in your infrastructure (coming soon)

🔍 Resources