# Crank.js

JavaScript and TypeScript UI framework whose components are plain functions, generators and promises.


Source: https://findsoftware.frbit.cloud/crank/
Last reviewed: 2026-10-26
Updated: 2026-10-28
Listed since: 2026-10-26

## Record

### Links

- home: https://crank.js.org
- repository: https://github.com/bikeshaving/crank
- docs: https://crank.js.org/guides/getting-started/

### Identity

- status: active
- maintainer: Brian Kim
- maintainerType: individual
- parent: unknown
- firstRelease: 2021
- hqCountry: unknown

### Kind

- category: framework
- hosting: unknown
- language: javascript
- runtime: unknown
- runtimeMin: unknown
- basedOn: unknown

### Content

- contentStore: unknown
- databases: unknown
- adminUi: unknown
- headlessApi: unknown
- templating: jsx
- i18n: unknown

### Rendering and deploy

- runsAs: browser
- renderingModes: unknown
- installMethod: npm

### License

- licenseModel: open-source
- license: MIT

### Releases

- currentMajor: 0
- latestReleaseDate: 2026-09-04

### Adoption

- githubStargazers: 2799
- packagistDownloads: not applicable
- npmWeeklyDownloads: 1123
- contributors: 29
- pluginCount: unknown
- packagistMonthlyDownloads: unknown
- ecosystemsMonthlyDownloads: unknown
- httpArchiveSites: unknown
- wordpressActiveInstalls: unknown
- dependentRepos: unknown
- dependentPackages: unknown

### Sources

- urls: https://crank.js.org (read 2026-10-26)
- urls: https://api.github.com/repos/bikeshaving/crank (read 2026-10-26)
- urls: https://crank.js.org/guides/getting-started/ (read 2026-10-26)
- firstRelease: https://registry.npmjs.org/@b9g/crank (read 2026-10-26)
- maintainer: https://raw.githubusercontent.com/bikeshaving/crank/main/LICENSE (read 2026-10-26)
- maintainerType: https://raw.githubusercontent.com/bikeshaving/crank/main/LICENSE (read 2026-10-26)
- language: https://api.github.com/repos/bikeshaving/crank (read 2026-10-26)
- category: https://crank.js.org (read 2026-10-26)
- templating: https://crank.js.org (read 2026-10-26)
- installMethod: https://crank.js.org/guides/getting-started/ (read 2026-10-26)
- installMethod: https://crank.js.org/guides/getting-started/ (read 2026-10-26)
- installMethod: https://crank.js.org/guides/getting-started/ (read 2026-10-26)
- runsAs: https://crank.js.org/guides/getting-started/ (read 2026-10-26)
- license: https://crank.js.org (read 2026-10-26)
- license: https://api.github.com/repos/bikeshaving/crank (read 2026-10-26)
- licenseModel: https://api.github.com/repos/bikeshaving/crank (read 2026-10-26)
- currentMajor: https://api.github.com/repos/bikeshaving/crank/releases (read 2026-10-26)
- latestReleaseDate: https://registry.npmjs.org/@b9g/crank (read 2026-10-26)
- githubStargazers: https://api.github.com/repos/bikeshaving/crank (read 2026-10-26)
- contributors: https://api.github.com/repos/bikeshaving/crank/contributors (read 2026-10-26)
- npmWeeklyDownloads: https://api.npmjs.org/downloads/range/2026-09-28:2026-10-04/@b9g/crank (read 2026-10-28)

## Notes

Crank.js is a JavaScript and TypeScript library for building websites and applications, in which components are plain functions, generators and promises, and it works with JSX. The [getting-started guide](https://crank.js.org/guides/getting-started/) installs the core package with npm, and also shows a single HTML file that loads Crank from a CDN and runs in the browser with no bundler.

## Worth knowing

The same guide describes a scaffolded app, set up by the create-crank command, that uses server-side rendering and static output with Shovel.js. That is the scaffolded app's stack and not a feature of the core package.

---

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
