nowfound

Dev tools · June 16, 2026

WY

Write Your GitHub Actions in TypeScript

I spend a lot of my time writing GitHub Actions. Specifically, I need to script a ton of things. The current way of writing GitHub Actions with YAML is usually fine for small jobs. But for anything complicated, I often find myself in incredibly cursed "shell-in-YAML" situations. This was a major source of bugs for me. Since the "script" was written in YAML, there was actually not an easy way to modularize out the scripting logic to unit test them. Worse, there was zero type safety! For those who work with GitHub Actions frequently, you know how annoying this gets. My ideal GitHub Actions…

What it does

In the maker’s words, at launch

I spend a lot of my time writing GitHub Actions. Specifically, I need to script a ton of things. The current way of writing GitHub Actions with YAML is usually fine for small jobs. But for anything complicated, I often find myself in incredibly cursed "shell-in-YAML" situations. This was a major source of bugs for me. Since the "script" was written in YAML, there was actually not an easy way to modularize out the scripting logic to unit test them. Worse, there was zero type safety! For those who work with GitHub Actions frequently, you know how annoying this gets. My ideal GitHub Actions workflow would be to write actual programs, preferably in a language with strong types support. I also don't want an opinionated framework or a beefy runtime to "run" my GitHub Actions. I literally just want a way to write arbitrary programs that can call other services using native tooling from their respective ecosystems; for example, the AWS SDK to orchestrate my cloud. So this got me thinking about the tooling in this space, and I was really surprised to find that it wasn't that great. Outside of a few linters and the popular `act` project, there was very little support for us DevOps guys. That's why I made Hollywood! (Try to guess why it's name this way, haha. Hint at the end.) It’s fully open-source and MIT-licensed. Just import Hollywood and you can begin writing your GitHub Actions logic purely in TypeScript. Hollywood is not a "framework" so there are very few -- if any -- opinions as to how you ought to use it. You are free to do literally whatever you want with it, provided that it's legal in TypeScript. This means you can validate your types with Zod or you can even use your favorite TypeScript frameworks, e.g. Effect.ts. Hollywood is also very lightweight: only 53 kB and only 6 runtime deps. If you wanted to containerize your Hollywood Actions, you are also not locked into any particular opinions or preconceived notions of how you should set up your runtimes and local testing. You can use Docker, or Podman, or Lima, or Apple's `container`, or a remote cloud service. Again, it's literally just TypeScript. You can do whatever you want with it. Hollywood is a fully general-purpose TypeScript library that compiles your beautiful TypeScript into validated YAML for your GitHub Actions to consume! -- Hint: "Lights, cameras, _!" Fun fact: you are allowed to shell out in TypeScript, so you can actually just shell out to any language you’d prefer, not just TypeScript.

Does the same job

all alternatives →
  • WG
    Write Github Actions Workflows in Typescript Rather Than YAML2023 · github.com · ▲6

    Hey HN, I just released github-actions-workflow-ts, an NPM package that allows you to write GitHub Actions workflows in Typescript rather than YAML. The package then generates GH Actions workflow YAML files from your Typescript code. Why? - Type safety - Code re-usability: package and reuse common jobs and steps across different workflows. - Imperative edge: Utilize control flow to control the generation of different kinds of workflows easily. Essentially, I realized that as I write larger and more complicated GH Actions workflows in YAML, they become less readable and thus more prone to…

  • AM
    ActionsPanel – Manually Trigger Your GitHub Actions2020 · ▲57

    Hi all! I wanted to share a small project that I've been working on with a buddy. https://www.actionspanel.app/ One of the problems that currently exists with GitHub Actions is the fact that there is no way to easily trigger your Actions unless you cause some kind of GitHub event. This could be pushing a new commit, or creating an issue on a repository. But if you just want to run an arbitrary action, there's not currently a good way to do that. This is a well known feature request: https://github.community/t5/GitHub-Actions/GitHub-Actions-Ma... GitHub…

  • GitHub Writer2020 · ▲206

    An Open Source WYSIWYG editor for GitHub

  • TypeScript Console2024 · ▲73

    Run TypeScript snippets directly in Chrome DevTools

  • Repl from Repo2019 · ▲190

    Run any GitHub repository in the click of a button

  • Reactive Workflows [LW24]2024 · ▲119

    "If X, then do Y" for your GitHub repository

More dev tools this month

the category →
  • Dograh592

    The open source VAPI alternative

    Dev tools · 25d ago · dograh.com

  • Meridian530

    Don't let your work go unnoticed. Get promoted!

    Dev tools · 20d ago · meridiona.com

  • x1516

    Lovable for iPhone apps go from idea to App Store

    Dev tools · 11d ago · x1.new

  • Open-source GTM skills for technical founders

    Dev tools · 29d ago · gtmcofounder.com

  • OpenTrailPaper is open-source bike computer firmware for the LilyGO T5S3 4.7" E-Paper PRO. It supports offline maps, GPX routes, FIT recording and Bluetooth sensors.

    Dev tools · 1d ago · opentrailpaper.com

  • Nuphos380

    The AI-Native DevOps Workspace.

    Dev tools · 24d ago · nuphos.ai

Launched alongside, June 2026

the whole month →
  • Fundraisly1,544

    AI fundraising agent that finds investors and books meetings

    AI · Jun 2026 · fundraisly.com

  • H6

    Today, I’m proud to announce Homebrew 6.0.0. The most significant changes since 5.1.0 are a new tap trust security mechanism, the new faster, smaller, default internal Homebrew JSON API, sandboxing on Linux, better defaults informed by our user survey, many brew bundle improvements, improved performance and initial support for macOS 27 (Golden Gate). Happy to discuss any questions here!

    Dev tools · Jun 2026 · brew.sh

  • PU

    hope you enjoy

    Life & fun · Jun 2026 · vorpus.github.io

  • Upstream977

    The inbox designed for humans and agents

    AI · Jun 2026 · upstream.do

  • Goldfish962

    Press Option. It knows your work and replies like you

    AI · Jun 2026 · goldfish.sh

  • IM

    Life & fun · Jun 2026 · hackernewstrends.com