I've always struggled with the various declarative syntaxes other CI/CD platforms use, especially when I just want to focus on shipping my projects.
The goal of PandaCI is enable you to code advanced workflows with little more than a quick example. I've found that by just having a few functions (job, exec, etc), everything else can be done natively in the language. A few such examples are:
- Conditional jobs — Use standard if statements
- Matrix jobs — Just write a for loop
- Code reuse — Create functions or import shared code
- Parallel steps — Use Promise.all
- API integrations — Native fetch or import npm packages
I'd love to hear any feedback (harsh or otherwise)! Personally, It's been a big upgrade for my projects and I'm excited to see what the community makes of it.
P.S. The core is language agnostic so let me know if there are any other languages you'd like to see.
I'm not sure but maybe git hub would let you sell this as an extension