Ready for Actions
Convex 0.5.0 introduces built-in support for actions — arbitrary lambda functions that run in a Node.js environment on the Convex cloud. We use the term action to differentiate these functions from Convex mutation and query functions, which enable transactional writes and dynamic subscriptions that update whenever data changes.
Queries and mutations are the core building blocks in Convex, but they’re required to be deterministic and free of side-effects. We leverage this determinism to efficiently schedule transactions, dynamically track changes to data, and automatically cache and distribute query results.
Actions are Convex’s first foray into executing code that has side-effects or isn’t purely oriented around reading or writing data. Data is the center of your application, and Convex has a custom-built and highly scalable database at its core, but Convex is not just a database. Convex is a platform designed to make backend engineering a thing of the past. We have a vision for the future where the vast majority of developers focus on building application code and leverage a small convenient set of abstractions that obviate the need for thinking about storage, execution, sync, queueing, or workflow.
There are a bewildering array of tools and technologies in the Infrastructure-as-a-Service landscape. These tools eliminate inconveniences but they don’t make problems go away—developers still end up having to compose these tools into a platform that runs their application. Convex isn’t a bag of tools. We have a lot of features coming soon, but these aren’t standalone building blocks that introduce another component to an already complex infrastructure. All features in Convex are designed to work together seamlessly: tying actions, mutations, queries, subscriptions and end-to-end reactivity together without developers dealing with glue code or data synchronization.
We think you’re going to like what’s coming soon but there’s a very good chance that Convex already meets your needs. Give it a try and say farewell to thoughts about infra overhead and data management.