Skip to content

Repository files navigation

Flughafen

CI

Type-safe GitHub Actions workflows in TypeScript. Autocomplete, validation, and security checks built in.

Why "Flughafen"?

Fluent GitHub Actions. The "fen" is there because not many words start with "flugha". Happens to be German for "airport".

Features

  • Build — Write workflows in TypeScript with a fluent API. Full autocomplete and type checking.
  • Validate — Security checks for secrets, vulnerable actions, script injection, and permissions.
  • Reverse — Convert existing YAML workflows to TypeScript in one command.

Install

npm install -D flughafen @flughafen/core

Quick Start

Create flughafen/workflows/ci.ts:

import { createWorkflow } from '@flughafen/core';

export default createWorkflow()
  .name('CI')
  .on('push', { branches: ['main'] })
  .on('pull_request')
  .job('test', (job) =>
    job
      .runsOn('ubuntu-latest')
      .step((step) => step.uses('actions/checkout@v4'))
      .step((step) => step.uses('actions/setup-node@v4', { 'node-version': '22' }))
      .step((step) => step.run('npm test'))
  );

Build:

npx flughafen build

Watch mode for continuous rebuilding:

npx flughafen build --watch

Output: .github/workflows/ci.yml

Packages

Documentation

jpwesselink.github.io/flughafen

Development

pnpm install
pnpm build
pnpm test

License

MIT

About

No description, website, or topics provided.

Resources

Stars

5 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages