Skip to content
Docs BETA

What Joomiz is

For feature teams and platform teams. Joomiz is a tool that allows platform teams to offer resources from a golden path to feature teams. You describe a service in one file. Joomiz checks the file, shows what a change would do, and then makes the change.

A golden path is a supported way to build a service. The platform team decides which golden paths exist.

The problem

Getting a service to production often means these jobs:

Each job is a hand-off between people. Hand-offs are slow, and they leave no clear record.

Many people now ask an AI assistant to help them write code and configuration. An assistant works well when it can read the whole task in one place and check its own answer. Scattered setup gives it neither. It guesses, and a wrong guess can reach production. An assistant that picks its own tools can also pick tools that the company has not approved.

The idea

Joomiz moves these jobs into one workflow with three ideas:

The feature team describes what the service needs. The platform team controls how it is provided: the rules, the state and the services that create real resources.

These ideas also suit AI assistants, for the same reasons that they suit people:

The assistant writes the file. The platform's rules, the preview and the person who applies the change still decide what happens.

Without Joomiz With Joomiz
Requests and hand-offs between teams One file next to the code of the service
Pipelines copied between projects A golden path that the platform team maintains
Secrets passed between people Secrets stay in a vault. Only a reference moves
No preview before a change joomiz plan shows the change first
History spread over tickets and chat A run for every plan and every apply

The parts of Joomiz

Joomiz architecture: the CLI sends joomiz.yaml to the control plane, and the control plane calls provisioners. The text below the picture says the same.

The picture in words:

  1. You keep joomiz.yaml in your project.
  2. The CLI sends the file to the control plane through a REST API, with a signed token.
  3. The control plane holds the rules and the catalog, the state, the audit trail, and access that is limited by owner.
  4. The control plane calls the provisioners through an OpenAPI contract.
  5. A provisioner can trigger a pipeline and receive the result by callback.

The parts one by one:

You write the file and run the CLI. The CLI calls the control plane with a signed token. The control plane calls the provisioners. Each provisioner does the work for the types that it handles.

Each provisioner chooses how it works. For example, one provisioner triggers pipelines in Azure DevOps and receives the result when the pipeline finishes.

Who does what

Feature team Platform team
Job Gets a service to run, with the resources it needs. Offers resources to many teams and keeps the platform running.
Works with The file joomiz.yaml and the CLI. The dashboard, the provisioners and the catalog of types.
Role in the token owner:<team> operator

A small team can be both. It then follows both paths.

A small example

This excerpt adds a PostgreSQL database to a service. The service reads the database password through a reference.

          env:
            # A reference, not a password. The value is known after the database exists.
            DB_PASSWORD: "${{managed-resources.shop-db.outputs.password}}"

    # A database that Joomiz creates and owns for this service.
    managed-resources:
      - id: shop-db
        type: postgres
        spec:
          flavor: cf-plan-small
          version: "16"
          storage-gb: 20
          multi-az: false

The password is not in the file. The text ${{ ... }} is a reference to an output of the database. Joomiz resolves the reference when it applies the change. The output is the address of a secret in a vault. It is not the secret.

The excerpt comes from the complete file quick-start-with-database.

Next

Learn how the things in Joomiz relate in How Joomiz works.