I built a thing
Posted
Building software is so much easier because of the Internet. Beyond StackOverflow, there are a some great tools such as Regex101, JS Fiddle and Pipedream which make it easy to run experiments and refine statements.
It’s in this spirit that I’ve built an emulator for Microsoft Expression Language. If you’re not familiar, Expression Language is a JavaScript like language used in Azure Data Factory, Azure Logic Apps & Power Automate. The challenge with all of these tools is that there is no build time validation: until you run the pipeline or flow you don’t know if you got your expression language statement correct.
That’s where the emulator comes in. Build your statement in the emulator, test it, and then copy/paste into the browser where you’re building your flow.
The emulator runs purely client side with nothing passed back to the server beyond request logs. It’s mostly complete (see below).
If you find it useful, tweet me to let me know. If I see enough traffic, I’ll move it to a dedicated domain.
To Do
- A complete XML implementation, particularly xpath
- Some edge case locale sensitive date formatting.
- Testing across a wide range of browsers (LMK via Twitter if you find a bug)
Acknowledgements
- The excellent Luxon package for date formatting
- Mocha & Chai for unit testing and assertions
- Microsoft and Microsoft Expression Language are registered trademarks and/or copyright of Microsoft Corporation.