mirror of
https://github.com/hanzoai/frames.git
synced 2026-09-24 00:08:03 +00:00
The npm scope becomes @hanzo: the CLI is @hanzo/frame, every library is @hanzo/frame-<name>. Versions go to 0.7.82. Credentials come from Hanzo IAM. `hanzo login` runs the IAM device flow and writes ~/.hanzo/credentials.json; unattended runs read HANZO_API_KEY delivered from Hanzo KMS. src/api.ts is the one place that knows the base URL and the credential, replacing the OAuth client, PKCE flow, loopback server, token store, and ~/.heygen credential file. `frames auth` keeps only `status`, since this CLI no longer issues credentials. Publish and feedback post to api.hanzo.ai/v1 without the HeyGen routing header. The HeyGen-hosted `frames cloud` render target is gone; local, AWS Lambda, and Google Cloud Run remain. Voice resolves to Hanzo speech (POST /v1/audio/speech) before local Kokoro; music resolves to local MusicGen. No analytics project is configured, so the CLI and studio send no events — they previously reported to HeyGen's. Drops the HeyGen wordmark from the studio header and the HeyGen promo render fixture with its brand assets and fonts.
81 lines
2.3 KiB
JSON
81 lines
2.3 KiB
JSON
{
|
|
"name": "@hanzo/frame",
|
|
"version": "0.7.82",
|
|
"description": "Frames CLI — create, preview, and render HTML video compositions",
|
|
"license": "Apache-2.0",
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "https://github.com/hanzoai/frames",
|
|
"directory": "packages/cli"
|
|
},
|
|
"bin": {
|
|
"frames": "./bin/frames.mjs"
|
|
},
|
|
"files": [
|
|
"bin",
|
|
"dist"
|
|
],
|
|
"type": "module",
|
|
"publishConfig": {
|
|
"access": "public"
|
|
},
|
|
"scripts": {
|
|
"test": "vitest run",
|
|
"dev": "tsx src/cli.ts",
|
|
"build": "bun run build:fonts && tsup && bun run build:runtime && bun run build:beat-analyzer && bun run build:copy",
|
|
"build:fonts": "node scripts/build-fonts.mjs",
|
|
"build:runtime": "tsx scripts/build-runtime.ts",
|
|
"build:beat-analyzer": "node scripts/build-beat-analyzer.mjs",
|
|
"build:copy": "node scripts/build-copy.mjs",
|
|
"typecheck": "tsc --noEmit",
|
|
"gen:skills-manifest": "tsx scripts/gen-skills-manifest.ts",
|
|
"gen:agent-dirs": "tsx scripts/sync-agent-dirs.ts"
|
|
},
|
|
"dependencies": {
|
|
"@hono/node-server": "^2.0.5",
|
|
"@puppeteer/browsers": "^3.0.6",
|
|
"adm-zip": "^0.6.0",
|
|
"citty": "^0.2.1",
|
|
"compare-versions": "^6.1.1",
|
|
"debug": "^4.4.0",
|
|
"esbuild": "^0.25.12",
|
|
"fontkit": "^2.0.4",
|
|
"giget": "^3.2.0",
|
|
"hono": "^4.0.0",
|
|
"ignore": "^5.3.2",
|
|
"onnxruntime-node": "1.21.1",
|
|
"open": "^10.0.0",
|
|
"postcss": "^8.5.8",
|
|
"prettier": "^3.8.1",
|
|
"puppeteer-core": "^25.2.1",
|
|
"sharp": "^0.35.0"
|
|
},
|
|
"devDependencies": {
|
|
"@clack/prompts": "^1.1.0",
|
|
"@hanzo/frame-aws-lambda": "workspace:*",
|
|
"@hanzo/frame-core": "workspace:*",
|
|
"@hanzo/frame-engine": "workspace:*",
|
|
"@hanzo/frame-gcp-cloud-run": "workspace:*",
|
|
"@hanzo/frame-lint": "workspace:*",
|
|
"@hanzo/frame-parsers": "workspace:*",
|
|
"@hanzo/frame-producer": "workspace:*",
|
|
"@hanzo/frame-studio": "workspace:*",
|
|
"@hanzo/frame-studio-server": "workspace:*",
|
|
"@types/fontkit": "^2.0.9",
|
|
"@types/mime-types": "^3.0.1",
|
|
"@types/node": "^25.0.10",
|
|
"linkedom": "^0.18.12",
|
|
"picocolors": "^1.1.1",
|
|
"tsup": "^8.0.0",
|
|
"tsx": "^4.0.0",
|
|
"typescript": "^5.0.0",
|
|
"vitest": "^3.2.4"
|
|
},
|
|
"optionalDependencies": {
|
|
"@google/genai": "^1.50.1"
|
|
},
|
|
"engines": {
|
|
"node": ">=22"
|
|
}
|
|
}
|