For developers

    Looking to build with Cyoda?

    Start on the open-source project — or join the Cyoda Cloud waitlist. Come back to cyoda.com when you need commercial support.

    Need enterprise support? Talk to us

    WHERE TO START

    Three paths, one model

    Cyoda keeps the same entity model across open source, cloud, and enterprise. No re-platforming wall as your requirements change.

    Open source

    Run it yourself

    Start locally with in-memory or SQLite, grow to PostgreSQL without changing your model. No vendor dependency.

    SaaS

    Cyoda Cloud

    Fully managed Cyoda — coming soon. Managed control plane, your business logic runs in your code via gRPC.

    Enterprise

    Commercial deployment

    SLAs, procurement support, and regulated rollout. For teams taking Cyoda into production.

    HOW IT WORKS

    Your code lives in a gRPC processor

    Cyoda calls your processor when an entity transitions state. You handle the logic; Cyoda handles consistency, history, and delivery.

    loan_processor.py
    # loan_processor.py
    from cyoda.sdk import ProcessorContext, entity_processor
    
    @entity_processor(entity_type="LoanApplication")
    def on_credit_check(
        ctx: ProcessorContext,
        entity: dict,
    ) -> dict:
        """Runs when a LoanApplication enters CREDIT_CHECK state."""
        score = credit_bureau.fetch(entity["applicant_id"])
    
        entity["credit_score"] = score
        entity["eligible"]     = score >= 650
    
        ctx.emit_event("credit_check_complete", {
            "entity_id": entity["id"],
            "score":     score,
        })
        return entity
    1. 1

      Start on cyoda.dev

    2. 2

      Build or test on your own infrastructure — or join the Cyoda Cloud waitlist for the managed platform.

    3. 3

      Move to enterprise if you need SLAs, procurement, or regulated support.