Skip to content

What Makes Coherence Different?

CNC vs other software chart

vs. PaaS

All software teams will at some point face the critical question: "How and where should I deploy my app?" Many turn to Platform-as-a-Service (PaaS) solutions to address these concerns quickly and easily.

Coherence offers several significant advantages over traditional Platform-as-a-Service (PaaS) solutions like Vercel, Heroku, Render, Railway, and fly.io. By managing cloud resources directly in your cloud account, Coherence excels in key areas such as cost, compliance, extensibility, and vendor lock-in prevention.

  • Comprehensive CI/CD Pipeline Management: PaaS solutions often require you to switch to a dedicated CI/CD provider for managing complex build, test, and deploy pipelines. In contrast, Coherence deploys fully-managed production-grade pipelines into your cloud provider for you, keeping your vendor footprint to a minimum and providing the most cost-effective and performant deployment automation possible.
  • Greater Integration with Cloud Tools: With PaaS solutions, integrating unsupported cloud tools (such as search, big data, data warehouse, or high-performance databases like Dynamo or Spanner) can be challenging. Coherence, on the other hand, grants you direct access to the raw VPC underlying your resources, making it easier to use GPUs or other hosted products from cloud providers.
  • Unified Management of Multiple Services: Unlike most PaaS solutions that treat frontends and backends (or multiple backend services) as separate applications, Coherence efficiently manages multiple services within a single application. This streamlined approach enhances the efficiency of pipelines and other software development lifecycle (SDLC) abstractions, eliminating the need for additional tooling outside the platform.

vs. Self-hosted PaaS

This category includes tools like Dokku, CapRover, and Coolify.

These tools are great if you are looking to host on a VM and your apps are simple. For complex apps, or where you want to use managed services like AWS RDS, ECS, Lambda, or CloudFront, they don't help.

vs. Building it Yourself

The natural inclination teams outgrowing PaaS is to build their own toolchain. This usually takes the form of a "good enough" approach — where problems are solved as they arise. Eventually they’ll hire a devops engineer to lead a months-long infrastructure migration and refactor, and then to maintain and support the tools they build. Often, the result is an "emergent" development platform, consisting of a piecemeal web of solutions (“toolchain”) assembled over time by one or multiple individuals or teams. Unfortunately, this approach ends up with teams still spending a third of their time and budget dealing with internal tooling issues.

A common "build it yourself" stack would be something like:

  • Backstage with a bunch of plugins for developer UI
  • Terraform/Pulumi plus a IaC execution platform like Spacelift or Env0
  • CI/CD with Github Actions, Jenkins, CircleCI, plus custom actions and UI for different deployment workflows

Teams need to build guardrails and training around each step, and the glue between them, for example secrets and other environment configuration often are used across these tools and also need developer-facing scripts and UX.

What you get with Coherence:

  • Full-stack environment previews using ephemeral environments
  • Build and deploy pipelines
  • dev, test and production environments
  • Hosted web-based SSH tools for secure & audited access to REPL or databases in each environment
  • Polished UI for admin and deployments
  • Infrastructure-as-code that just works
  • secrets manager with a great develper experience

Each of these features, if tackled individually, could become a months-long project that diverts your top engineers from essential product work. By using a solution like Coherence, you can ship customer value on a high-quality foundation while eliminating infrastructure development and maintenance from your roadmap.

vs. Black-box IDP, first-gen DevOps automation

DevOps automation tools are software that bridge the gap between the Platform-as-a-Service providers and the big public clouds. There are a variety of options for devops automation tools today:

  • Framework-focused tools (e.g. sst.dev, encore.dev)
  • Cloud provider tools (e.g. AWS Amplify, AWS CodeCatalyst, Azure DevOps)
  • Drang-and-drop IaC tools (e.g. MassDriver, DuploCloud, BrainBoard)
  • Internal Developer Platform / Own-cloud PaaS (e.g. Release, Architect, Zeet, Qovery, or Flightcontrol)
  • Ephemeral environment management solutions (e.g. Shipyard, Velocity)

In our view, framework-focused tools are suitable for new projects that align with the chosen framework, but aren't the best fit for most growing teams or for existing projects. Cloud provider tools are powerful for setup, but may not be ideal for ongoing maintenance and team management, often needing a DevOps expert for configuration. They also tend to prioritize feature quantity over developer experience and may lack crucial third-party integrations.

Traditional Internal Developer Platforms offer a lot of the functionality that teams need: they combine a portal with CI/CD and infra management. Where they fall short is in a few key areas:

  • Customization: often based on lifecycle hooks and limited in what can truly be customized. This leads to lock-in over the long term and limits the kinds of apps that can be deployed. This platform is sub-optimal for many apps and will be outgrown by others.
  • Cost: being kubernetes-based, they lock in expensive infra footprints in the cloud and limit the ways an app can leverage managed services (e.g. serverless) and use the cloud effectively.
  • Long migration times due to architecture mismatch with existing systems

Coherence

Coherence is an Internal Developer Platform that includes developer portal UI, managed CI/CD integrated with source providers like github, and infra-as-code execution. Coherence is powered by cnc, the open-source infra as code framework.

The most important way it Coherence is different than a black-box IDP is that it is built on cnc which offers limitless customization for the infra you provision and the build and deploy scripts that Coherence will run against it. Even other open-source IDP projects aren't self-hostable, complete, and licensed the way cnc is.

You can take cnc, and build a PaaS-type developer experience with just a bit of glue code for simple workflows. This is also a clean ejection path for any app that wants to leave Coherence behind entirely but keep existing infra and workflowsd intact, another Coherence advantage.

  • Imagine backstage with all the plugins!
    • Secrets UI with ability to alias, inherit defaults, and managed environment variables
    • Create, Manage, and Modify environments of different types, e.g. preview/ephemeral, static, or production
    • Self-service functionality for developers to create new environments, add new services, and configure them. RBAC built-in, uses best-practice deployments with unlimitied flexibility with cnc, and day-2 maintainence tools like observability and CLI access are easy to manage
  • CI/CD management - easy to use CI/CD that delivers secure, fast, production-ready builds and deployments. Unlimited ability to customize behavior with cnc and can use in external CI/CD such as github actions as well. cocli api wrapper for Coherence APIs also provided.
    • Deploy continuously from branches with github integration, or promote builds manually via UI or API
    • Automated CI/CD in your own cloud
    • UI for pipeline visibility and logging
    • Secreets managed
    • Automatic containerization with nixapcks
  • Infra as Code Job Executions. Same functionality as tools like Spacelift or Env0, built into your developer portal. Easier to write IaC with cnc, the first platform engineering framework
    • Execute provision jobs against many environments with RBAC permissions
    • Use cnc to make it easy for devs to define environments and services, while giving platform teams ability to customize terraform and scripts limitlessly.