Code Labs Logo
Menu

Workflow Manager

A solution for efficient scheduled workflows in Github

workflow manager dashboard Workflow Manager is the result of an innovation week, or hackweek as we at Codelabs call it. It's a solution for scheduling workflows (a.k.a workflows) in Github.

Unlike Github's built-in solution for scheduling workflows, Workflow Manager is more flexible and can schedule workflows in a more advanced way.

The problem

Github's built-in solution for scheduling workflows uses cron expressions, which is a good solution for simple scheduling. But if you want to schedule workflows in a more advanced way, such as:

  • Scheduling workflows to run at specific times on specific days
  • Scheduling workflows to run only on weekdays
  • Scheduling workflows to run only during certain months
  • Being able to see an overview of when workflows are scheduled to run

Then Github's built-in solution is not sufficient.

The solution

Workflow Manager is a web application that provides a user-friendly interface for scheduling workflows in Github. It uses Github's REST API to trigger workflows and Github's webhooks to listen for workflow events.

workflow manager calendar

The application is built with Next.js and Tailwind CSS and uses Supabase as database.

Features

  • Schedule workflows: Schedule workflows to run at specific times on specific days
  • Calendar view: See an overview of when workflows are scheduled to run
  • Workflow history: See a history of when workflows have run
  • Multiple repositories: Manage workflows across multiple repositories
  • User management: Multiple users can use the same instance

workflow manager workflow list

How it works

The application works by storing scheduled workflows in a database and then using a cron job to check if any workflows should be triggered. When a workflow should be triggered, the application uses Github's REST API to trigger the workflow.

Try it out

Workflow Manager is open source and available on Github. You can also try out a demo instance here.

Future plans

We have several ideas for how to develop Workflow Manager further:

  • Support for more advanced scheduling rules
  • Integration with other CI/CD platforms
  • Support for workflow dependencies
  • Better visualization of workflow history

If you have ideas or want to contribute, we welcome contributions via Github!

Quick Links

Follow us

  • LinkedIn
  • Instagram
  • GitHub

Contact us

Tel: 08 - 128 164 00

Code Labs AB

Org.nr: 559064-2442

codelabs