Back to browse
GitHub Repository

Lights, Cameras, (GitHub) Actions!

1 starsTypeScript

Write Your GitHub Actions in TypeScript

by windsor·Jun 16, 2026·7 points·1 comment

AI Analysis

●●SolidSolve My ProblemShip It

TypeScript Actions with type safety beats shell-in-YAML hell.

Strengths
  • Unit test Actions logic locally before CI runs
  • AI-native docs with llms.txt for agent context
  • Vouch contribution system handles AI-generated code verification
Weaknesses
  • TypeScript Actions wrappers already exist (actions/typescript-action)
  • Adds build step between source and deployed action
Target Audience

DevOps engineers and GitHub Actions power users

Similar To

actions/typescript-action · nektos/act · Hyperfine

Post Description

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.

Similar Projects

Developer Tools●●Solid

Run Lane – Generate GitHub Actions Workflows for iOS and Android

A focused configurator that spits out GitHub Actions YAML for iOS/TestFlight and Android/Firebase with claims to handle certificates, provisioning, caching and signing — exactly the boilerplate most mobile teams hate. The landing is clean and friction-free (no signup, big Generate button), but the real value hinges on how it manages Apple credentials and secrets; if that’s robust, it saves a lot of setup work, otherwise it’s a nicer template generator in an already crowded space.

Solve My ProblemSlick
A_Ilinskii
213mo ago