# Punch

Node.js web publishing framework that generates static sites from Mustache templates and JSON or Markdown content, and publishes them to Amazon S3 or over SFTP.


Source: https://findsoftware.frbit.cloud/punch/
Last reviewed: 2026-10-22
Updated: 2026-10-25
Listed since: 2026-10-22

## Record

### Links

- home: https://laktek.github.io/punch/
- repository: https://github.com/laktek/punch
- docs: https://github.com/laktek/punch/wiki

### Identity

- status: discontinued
- maintainer: Lakshan Perera
- maintainerType: individual
- parent: unknown
- firstRelease: 2012
- hqCountry: unknown

### Kind

- category: unknown
- hosting: static
- language: javascript
- runtime: node
- runtimeMin: unknown
- basedOn: unknown

### Content

- contentStore: flat-file
- databases: unknown
- adminUi: unknown
- headlessApi: unknown
- templating: mustache
- i18n: unknown

### Rendering and deploy

- runsAs: static, local
- renderingModes: static
- installMethod: npm install -g punch

### License

- licenseModel: open-source
- license: MIT

### Releases

- currentMajor: 0
- latestReleaseDate: 2014-12-07

### Adoption

- githubStargazers: 1160
- packagistDownloads: not applicable
- npmWeeklyDownloads: 52
- contributors: 12
- pluginCount: unknown
- packagistMonthlyDownloads: unknown
- ecosystemsMonthlyDownloads: unknown
- httpArchiveSites: unknown
- wordpressActiveInstalls: unknown
- dependentRepos: 37
- dependentPackages: 16

### Sources

- urls: https://laktek.github.io/punch/ (read 2026-10-22)
- status: https://github.com/laktek/punch/wiki (read 2026-10-22)
- status: https://api.github.com/repos/laktek/punch (read 2026-10-22)
- urls: https://api.github.com/repos/laktek/punch (read 2026-10-22)
- urls: https://raw.githubusercontent.com/laktek/punch/master/README.md (read 2026-10-22)
- language: https://api.github.com/repos/laktek/punch (read 2026-10-22)
- runtime: https://github.com/laktek/punch/wiki/Installation (read 2026-10-22)
- installMethod: https://raw.githubusercontent.com/laktek/punch/master/README.md (read 2026-10-22)
- renderingModes: https://github.com/laktek/punch/wiki/Generating-a-Site (read 2026-10-22)
- runsAs: https://github.com/laktek/punch/wiki/Publishing-a-Site (read 2026-10-22)
- runsAs: https://github.com/laktek/punch/wiki/Quick-tutorial (read 2026-10-22)
- contentStore: https://raw.githubusercontent.com/laktek/punch/master/README.md (read 2026-10-22)
- templating: https://raw.githubusercontent.com/laktek/punch/master/README.md (read 2026-10-22)
- maintainer: https://raw.githubusercontent.com/laktek/punch/master/LICENSE (read 2026-10-22)
- license: https://api.github.com/repos/laktek/punch (read 2026-10-22)
- licenseModel: https://raw.githubusercontent.com/laktek/punch/master/LICENSE (read 2026-10-22)
- firstRelease: https://registry.npmjs.org/punch (read 2026-10-22)
- currentMajor: https://registry.npmjs.org/punch (read 2026-10-22)
- latestReleaseDate: https://registry.npmjs.org/punch (read 2026-10-22)
- githubStargazers: https://api.github.com/repos/laktek/punch (read 2026-10-22)
- contributors: https://api.github.com/repos/laktek/punch/contributors (read 2026-10-22)
- npmWeeklyDownloads: https://api.npmjs.org/downloads/point/last-week/punch (read 2026-10-22)
- dependentRepos: https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/punch (read 2026-10-25)
- dependentPackages: https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/punch (read 2026-10-25)

## Notes

Punch is a web publishing framework that runs on Node.js. It builds pages from Mustache templates with inheritable layouts and partials, and it reads page contents from JSON and Markdown. The `punch generate` command renders every page and copies the assets into an `output` directory, which is the static site that gets served.

Punch publishes that directory to Amazon S3 or to a custom server over SFTP. A development server previews changes while the site is edited.

## Worth knowing

The repository was archived by its owner and is read-only.

---

Data licensed CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Attributes are recorded, never scored; absent means unknown.
Credit, in full: FindSoftware, CC BY 4.0
