惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Recent Announcements
Recent Announcements
Martin Fowler
Martin Fowler
MongoDB | Blog
MongoDB | Blog
Engineering at Meta
Engineering at Meta
Stack Overflow Blog
Stack Overflow Blog
Google DeepMind News
Google DeepMind News
Microsoft Security Blog
Microsoft Security Blog
aimingoo的专栏
aimingoo的专栏
I
InfoQ
B
Blog
WordPress大学
WordPress大学
Jina AI
Jina AI
小众软件
小众软件
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
博客园_首页
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
酷 壳 – CoolShell
酷 壳 – CoolShell
阮一峰的网络日志
阮一峰的网络日志
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
G
Google Developers Blog
C
Check Point Blog
月光博客
月光博客
L
LangChain Blog
GbyAI
GbyAI

HN's home page

Rainbow Query Language | Hacker News Exec into Node via Kubectl An AI native hedge fund The Seven-Action Documentation Model | Hacker News Package Manager for Kubectl Plugins Tongan Castaways | Hacker News Tech overlords plan for conscious AI to conquer the cosmos. What could go wrong? Data Breach Disclosure Lag Is Getting Worse How LLMs Work | Hacker News I Dropped PRDs for Shape Up Go Experiments Explained | Hacker News FCA's Palantir deal could expose UK financial data to Trump's US, critics fear WebXR BCI for Neural-Adaptive Avatar Control in Mixed Reality The first murder conviction via DNA analysis Tom Interviews Theo de Raadt of the OpenBSD Project (2019) [video] Show HN: Replace shell commands with bun shell typescript scripts Quay.io Is Down | Hacker News AI driven analysis of brokerage account fees in the UK Bill Gates Spent Years Crafting His Image. Now It's Cracking Using LLMs to secure source code Wi-Fi 8 in the Lab [video] The household battery revolution that could change energy bills and the world Is Python Becoming Pinyin? | Hacker News Livia – Executive Assistant | Hacker News FindMyPipe – Query Apple Find My from Linux for AI Agents Show HN: Agent skill for creating product launch videos with Remotion RecruitMyself – AI job search copilot for resumes and applications AI coding agents and the erosion of system understanding The 'Resting' Generation and South Korea's Youth Recession AMD Computex 2026: 10 Years of AM4, AM5 Support Through 2029
Show HN: Write Your GitHub Actions in TypeScript
windsor · 2026-06-17 · via HN's home page

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.