Skip to content

FAQ

A cloud functor is an acyclic DAG (topology) of composable cloud entities viz functions, mutations, events, routes, states, queues and channels. tc implements the Cloud Functor pattern.

To start with, it is for anyone looking to have a simple way to manage serverless workflows on AWS.

Why does it have to be a topology or a graph ?

Section titled “Why does it have to be a topology or a graph ?”

In the Cloud Functor world, a lambda is a not a micro service, a topology is. A topology comprises of core entities (functions, mutations, events, routes, states, queues, pages and channels) and their components. This topology is considered a single atomic unit of deployment. tc composes these and builds a graph to ascertain their dependencies, order of creation by doing a topology sort etc.

Why does it have to be a topology or a graph ?

Section titled “Why does it have to be a topology or a graph ?”

tc is an application composer that implements the Cloud Functor pattern. It is not fair to compare it with other infrastructure tools as all of them are unique and suited for different needs. tc may or may not be for you. If you like to express your architecture and application topology at a high-level with minimal or no infrastructure code, then tc is for you!

TerraformAmplifyServerlessSSTtc
Entity AbstractionNoNoNoNoYes
Entity CompositionNoNoNoNoYes
Dynamic PermissionsNoNoNoNoYes
Dynamic FlowsNoNoNoNoYes
StatefulYesYesYesYesNo
NamespacingNoNoNoNoYes
SandboxingNoNoNoYesYes
CanariesNoNoNoNoYes
Written inGoNodejsNodejsTypescriptRust
IACYesYesGenerated
FullstackMaybeYesYesYesYes
Cloud AgnosticYesNoNoNoPending
Function buildersNoNoLimitedLimitedSophisticated
LicenseBSLApache2.0MITMITGPL-v2