Hey everyone! Long time no see.
I was not active for couple of months but it was for a good cause. I've been learning Rust, and honestly, I fell in love with it! It's kinda low level but still gives one of the highest developer experiences while writing it.
Several months ago I've decided to create a useful side project - a dynamic price checker that supports multiple websites. But it didn't happen because I couldn't find the right tools I needed. That's why I've build StewardX!
So what is StewardX?
StewardX is actually an acronym! It stands for Scheduled Task Executor With Asynchronous Runtime and Database and an X on the end. It is a scheduled task executor. Think of cron but with a database. Being written in Rust, gives us a compiled, lightweight single file executable.
- It stores the outputs of tasks
- It can run tasks periodically
- It can be triggered to run tasks
- It supports both Dockerfile and Docker image (prebuilt)
- It supports command tasks (like echo "Hey")
- It serializes and saves tasks in Database (Currently only PostgreSQL).
- Got a buggy and cute control panel 😛
I'd like to point out the last item, it stores tasks in database! Means that, it's portable 😁
StewardX currently supports two task
- Docker - As I said, it supports both dockerfiles and docker images
But it can be easily extended, thanks to Rust's trait system. In fact, I'll be writing tutorials to explain how to add a new task type.
Currently, there are two frequency types:
- Hook - which is basically a webhook
- Cron - with seconds support