-
-
Notifications
You must be signed in to change notification settings - Fork 5
Description
September 2025
This project was built because we'd had a run of potential customers who wanted to use Temporal, but wanted to do it through a DSL. As Temporal is a code-first tool, this is something that's not currently supported and, truthfully, probably never will be (which I agree with). This project was created to answer two questions:
- can it be done?
- should it be done?
To answer the first question, I think this has been very much answered "yes".
Answering the second question is more nuanced. It certainly allows for you to get a Temporal worker running very quickly and it (can) abstract away a lot of the complexities of running the application reliably (health checks, metrics, versioning etc) to give you a reliable application. It can also allow non-developers to use Temporal (I'll leave that for you to decide if that's a good or a bad thing 🤷🏻). But it also does have some compromises - a load of YAML probably is harder to read than code. And it can be tricky to get some of the nuances that are easy in code. Some of these are reduced with a drag 'n' drop front-end (which is something I'd like to do in this project.
Overall, I think this is a valuable contribution to the Temporal ecosystem and something that is good to be maintained by the community. I am currently embarking on a professionalisation of this project, which will include a rewrite and raising tickets/backlog for desired items.
Temporal releases things in a three-phase process:
- prerelease (still being developed, use with caution)
- public preview (may still change, but unlikely. Can be used in prod)
- generally available (production-grade)
In my mind, this project is following this template - anything in the v0.0.x range (where we currently are) is prerelease and considered unstable. I intend to work to a v0.1 release which will be public preview, implementing lessons learned. I will then work towards making a v1 when it'll be GA status.
Please join me on the journey and let's develop a strong community project.