{"meta":{"name":"FindSoftware","page":"https://findsoftware.frbit.cloud/crank/","markdown":"https://findsoftware.frbit.cloud/crank.md","license":"https://creativecommons.org/licenses/by/4.0/","attribution":"FindSoftware, CC BY 4.0","note":"Attributes are recorded, never scored. An absent field means unknown, never zero and never bad."},"record":{"id":"crank","name":"Crank.js","urls":{"home":"https://crank.js.org","repository":"https://github.com/bikeshaving/crank","docs":"https://crank.js.org/guides/getting-started/"},"category":["framework"],"description":"JavaScript and TypeScript UI framework whose components are plain functions, generators and promises.","maintainer":"Brian Kim","maintainerType":"individual","firstRelease":2021,"language":"javascript","templating":"jsx","runsAs":["browser"],"installMethod":"npm","licenseModel":"open-source","license":"MIT","currentMajor":"0","latestReleaseDate":"2026-09-04T00:00:00.000Z","githubStargazers":2799,"contributors":29,"packagistDownloads":null,"npmWeeklyDownloads":1123,"checkedAt":"2026-10-26T00:00:00.000Z","addedAt":"2026-10-26T00:00:00.000Z","sources":[{"field":"urls","url":"https://crank.js.org","checkedAt":"2026-10-26T00:00:00.000Z"},{"field":"urls","url":"https://api.github.com/repos/bikeshaving/crank","checkedAt":"2026-10-26T00:00:00.000Z"},{"field":"urls","url":"https://crank.js.org/guides/getting-started/","checkedAt":"2026-10-26T00:00:00.000Z"},{"field":"firstRelease","url":"https://registry.npmjs.org/@b9g/crank","checkedAt":"2026-10-26T00:00:00.000Z"},{"field":"maintainer","url":"https://raw.githubusercontent.com/bikeshaving/crank/main/LICENSE","checkedAt":"2026-10-26T00:00:00.000Z"},{"field":"maintainerType","url":"https://raw.githubusercontent.com/bikeshaving/crank/main/LICENSE","checkedAt":"2026-10-26T00:00:00.000Z"},{"field":"language","url":"https://api.github.com/repos/bikeshaving/crank","checkedAt":"2026-10-26T00:00:00.000Z"},{"field":"category","url":"https://crank.js.org","checkedAt":"2026-10-26T00:00:00.000Z"},{"field":"templating","url":"https://crank.js.org","checkedAt":"2026-10-26T00:00:00.000Z"},{"field":"installMethod","url":"https://crank.js.org/guides/getting-started/","checkedAt":"2026-10-26T00:00:00.000Z"},{"field":"installMethod","url":"https://crank.js.org/guides/getting-started/","checkedAt":"2026-10-26T00:00:00.000Z"},{"field":"installMethod","url":"https://crank.js.org/guides/getting-started/","checkedAt":"2026-10-26T00:00:00.000Z"},{"field":"runsAs","url":"https://crank.js.org/guides/getting-started/","checkedAt":"2026-10-26T00:00:00.000Z"},{"field":"license","url":"https://crank.js.org","checkedAt":"2026-10-26T00:00:00.000Z"},{"field":"license","url":"https://api.github.com/repos/bikeshaving/crank","checkedAt":"2026-10-26T00:00:00.000Z"},{"field":"licenseModel","url":"https://api.github.com/repos/bikeshaving/crank","checkedAt":"2026-10-26T00:00:00.000Z"},{"field":"currentMajor","url":"https://api.github.com/repos/bikeshaving/crank/releases","checkedAt":"2026-10-26T00:00:00.000Z"},{"field":"latestReleaseDate","url":"https://registry.npmjs.org/@b9g/crank","checkedAt":"2026-10-26T00:00:00.000Z"},{"field":"githubStargazers","url":"https://api.github.com/repos/bikeshaving/crank","checkedAt":"2026-10-26T00:00:00.000Z"},{"field":"contributors","url":"https://api.github.com/repos/bikeshaving/crank/contributors","checkedAt":"2026-10-26T00:00:00.000Z"},{"field":"npmWeeklyDownloads","url":"https://api.npmjs.org/downloads/range/2026-09-28:2026-10-04/@b9g/crank","checkedAt":"2026-10-28T00:00:00.000Z"}],"status":"active","ai":"authored"},"prose":"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.\n\n## Worth knowing\n\nThe 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."}