DEV Community

loading...
Cover image for Introducing StewardX - Your automation buddy!

Introducing StewardX - Your automation buddy!

Gökay Okyay
A developer who loves to code with JS && Swift && Rust. Tries to re-create cool open source projects in his spare time.
・2 min read

Hey everyone! Long time no see.

A little history

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!

Introduction

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.

Features

  • 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 😁

Task types

StewardX currently supports two task

  • Docker - As I said, it supports both dockerfiles and docker images
  • Command

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.

Frequency

Currently, there are two frequency types:

  • Hook - which is basically a webhook
  • Cron - with seconds support

I'll be writing more tutorials and guides about StewardX, but in the mean time, feel free to checkout the repository and the documentation.

See you!

Discussion (0)