Skip to content

GitHub Action

GitHub Marketplace   CI

The ForgeKit Scaffold action lets you scaffold production-ready projects inside your GitHub Actions workflows. One step gives you a fully wired project with the right stack, Dockerfile, CI/CD, tests, and environment config.

Usage

yaml
- uses: SubhanshuMG/forgekit-action@v1
  with:
    template: web-app
    name: my-app

Inputs

InputDescriptionRequiredDefault
templateTemplate ID to scaffoldYes
nameProject nameYes
output-dirDirectory to scaffold into, relative to workspace rootNo.
skip-installSkip npm install or pip install after scaffoldingNofalse
versionVersion of forgekit-cli to useNolatest

Outputs

OutputDescription
project-pathAbsolute path to the scaffolded project

Examples

Scaffold and test

yaml
name: Scaffold and test

on: [push]

jobs:
  scaffold:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4

      - name: Scaffold project
        id: forge
        uses: SubhanshuMG/forgekit-action@v1
        with:
          template: web-app
          name: my-app
          skip-install: 'false'

      - name: Run tests
        working-directory: ${{ steps.forge.outputs.project-path }}
        run: |
          npm install
          npm test

Scaffold into a subdirectory

yaml
- uses: SubhanshuMG/forgekit-action@v1
  with:
    template: go-api
    name: backend
    output-dir: services

Matrix scaffold across templates

yaml
strategy:
  matrix:
    template: [web-app, api-service, next-app]

steps:
  - uses: SubhanshuMG/forgekit-action@v1
    with:
      template: ${{ matrix.template }}
      name: test-${{ matrix.template }}
      skip-install: 'true'

Templates

All ForgeKit templates are supported:

TemplateStack
web-appNode.js + React + TypeScript + Express
api-servicePython + FastAPI + PostgreSQL
ml-pipelinePython + Jupyter + MLflow
next-appNext.js + TypeScript + Tailwind CSS
go-apiGo + Gin + PostgreSQL
serverlessTypeScript + AWS Lambda

Source

github.com/SubhanshuMG/forgekit-action

Released under the Apache 2.0 License.