diff --git a/README.md b/README.md index 9090da4ac2..ffe9f4c2c4 100644 --- a/README.md +++ b/README.md @@ -17,10 +17,10 @@

Write HTML. Render video. Built for agents.

- Studio | + Studio | Quickstart | Showcase | - Playground | + Playground | Catalog | Docs | Discord @@ -148,57 +148,57 @@ The output is a `DESIGN.md` superset your whole toolchain can read. Atoms stay s
- Biennale Yellow -
Biennale Yellow + Biennale Yellow +
Biennale Yellow
- BlockFrame -
BlockFrame + BlockFrame +
BlockFrame
- Blue Professional -
Blue Professional + Blue Professional +
Blue Professional
- Bold Poster -
Bold Poster + Bold Poster +
Bold Poster
- Broadside -
Broadside + Broadside +
Broadside
- Capsule -
Capsule + Capsule +
Capsule
- Cartesian -
Cartesian + Cartesian +
Cartesian
- Cobalt Grid -
Cobalt Grid + Cobalt Grid +
Cobalt Grid
- Coral -
Coral + Coral +
Coral
- Creative Mode -
Creative Mode + Creative Mode +
Creative Mode
-Browse and remix them all at [hyperframes.dev/design](https://www.hyperframes.dev/design). +Browse and remix them all at [hyperframes.studio/design](https://hyperframes.studio/design). ## How It Works @@ -242,16 +242,16 @@ Preview instantly in the browser. Render locally or in Docker. The renderer seek HyperFrames is the open-source rendering engine, plus a growing set of tools around HTML-native video creation. -| Piece | Status | What it does | -| ----------------------------------------------- | ------------------- | ------------------------------------------------------------------------------------------------- | -| CLI | Available | Scaffold, preview, lint, inspect, and render local video projects | -| Core / Engine / Producer | Available | Parse compositions, drive headless Chrome, encode video, and mix audio | -| Catalog | Available | Reusable blocks and components for transitions, overlays, captions, charts, maps, and effects | -| Agent skills | Available | Teach coding agents the video-production patterns that generic web docs miss | -| Studio | Available, evolving | Browser surface for previewing and editing compositions | -| AWS Lambda rendering | Available | Deploy a distributed render stack and drive renders from your laptop or CI | -| [hyperframes.dev](https://www.hyperframes.dev/) | Available | Community playground for previewing, iterating, sharing, and rendering HTML-native video projects | -| [frame.md](https://www.hyperframes.dev/design) | Available | Invert your design system for the camera — a DESIGN.md superset an agent can compose video from | +| Piece | Status | What it does | +| ------------------------------------------------- | ------------------- | ------------------------------------------------------------------------------------------------- | +| CLI | Available | Scaffold, preview, lint, inspect, and render local video projects | +| Core / Engine / Producer | Available | Parse compositions, drive headless Chrome, encode video, and mix audio | +| Catalog | Available | Reusable blocks and components for transitions, overlays, captions, charts, maps, and effects | +| Agent skills | Available | Teach coding agents the video-production patterns that generic web docs miss | +| Studio | Available, evolving | Browser surface for previewing and editing compositions | +| AWS Lambda rendering | Available | Deploy a distributed render stack and drive renders from your laptop or CI | +| [hyperframes.studio](https://hyperframes.studio/) | Available | Community playground for previewing, iterating, sharing, and rendering HTML-native video projects | +| [frame.md](https://hyperframes.studio/design) | Available | Invert your design system for the camera — a DESIGN.md superset an agent can compose video from | ## Catalog diff --git a/docs/contributing/catalog.mdx b/docs/contributing/catalog.mdx index cc8895edbf..77d26a68c2 100644 --- a/docs/contributing/catalog.mdx +++ b/docs/contributing/catalog.mdx @@ -202,7 +202,7 @@ Include: - the item directory; - the matching entry in `registry/registry.json`; - regenerated Catalog output; -- a `hyperframes.dev` preview from `npx hyperframes publish`; +- a `hyperframes.studio` preview from `npx hyperframes publish`; - when to use it, its useful duration range, and any known pitfalls. External contributors should attach the preview MP4. A maintainer will publish diff --git a/docs/docs.json b/docs/docs.json index 5474d944ec..c4aa63d62f 100644 --- a/docs/docs.json +++ b/docs/docs.json @@ -1031,7 +1031,7 @@ }, { "label": "Download the Studio app", - "href": "https://hyperframes.dev/studio/download?src=docs-footer" + "href": "https://hyperframes.studio/studio/download?src=docs-footer" }, { "label": "GitHub", @@ -1051,7 +1051,7 @@ "primary": { "type": "button", "label": "Download Studio", - "href": "https://hyperframes.dev/studio/download?src=docs-navbar" + "href": "https://hyperframes.studio/studio/download?src=docs-navbar" } }, "redirects": [ diff --git a/docs/download-attribution.js b/docs/download-attribution.js index 1e895eb8c3..a604da6b29 100644 --- a/docs/download-attribution.js +++ b/docs/download-attribution.js @@ -1,4 +1,4 @@ -// Studio download links name this visitor's PostHog id (`ph_id`), so hyperframes.dev counts the download under the +// Studio download links name this visitor's PostHog id (`ph_id`), so hyperframes.studio counts the download under the // same person as these docs' pageviews. Both sites send to one PostHog project, but each domain has its own cookie, // so the download site cannot read this one. Mintlify runs every .js file in docs/ on every page // (mintlify.com/docs/customize/custom-scripts). The id is added at click time only, so a copied link never carries it, @@ -10,7 +10,7 @@ // default, in a cookie when a site configures that, so both are read. var OPT_OUT = "__ph_opt_in_out_" + TOKEN; // The one download address the docs link to (docs.json navbar and footer, quickstart.mdx). - var DOWNLOAD = { protocol: "https:", hostname: "hyperframes.dev", pathname: "/studio/download" }; + var DOWNLOAD = { protocol: "https:", hostname: "hyperframes.studio", pathname: "/studio/download" }; var UUID = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i; function cookie(name) { diff --git a/docs/packages/cli.mdx b/docs/packages/cli.mdx index ec931614df..98f6ed2cb3 100644 --- a/docs/packages/cli.mdx +++ b/docs/packages/cli.mdx @@ -1012,7 +1012,7 @@ editor, just playback. Same flags, `--port` defaults to 3003, plus `--proxy` / ### `publish` -Upload the project and get back a stable `hyperframes.dev` URL. +Upload the project and get back a stable `hyperframes.studio` URL. ```bash npx hyperframes publish [dir] @@ -1034,7 +1034,7 @@ content — so it keeps working after the CLI exits. No local server stays alive and no tunnel is opened. You can publish while signed out. The printed URL then carries a claim token: -whoever opens it on `hyperframes.dev` can sign in, claim the project, and keep +whoever opens it on `hyperframes.studio` can sign in, claim the project, and keep editing in the web app. Sign in with `npx hyperframes auth login` first when you want an owned, stable diff --git a/docs/quickstart.mdx b/docs/quickstart.mdx index a7366d4d09..094c11e4b0 100644 --- a/docs/quickstart.mdx +++ b/docs/quickstart.mdx @@ -30,7 +30,7 @@ drawing. For Mac (Apple Silicon or Intel), Windows (64-bit Intel and AMD; not Wi - Download the Studio app, open it, and + Download the Studio app, open it, and sign in with a free HeyGen account. [Install the Studio app](/studio-app) has the steps for each system. diff --git a/docs/studio-app/export.mdx b/docs/studio-app/export.mdx index 63ea2f23aa..3356362485 100644 --- a/docs/studio-app/export.mdx +++ b/docs/studio-app/export.mdx @@ -73,7 +73,7 @@ Watch the exported file once from start to end before you send it. - **The video was made but could not be saved to your Downloads folder**: free up space or check that the Downloads folder exists, then export again. - **HyperFrames could not start its built-in FFmpeg**: the app may be damaged. Reinstall it from - [hyperframes.dev/studio](https://hyperframes.dev/studio). + [hyperframes.studio/studio](https://hyperframes.studio/studio). ## Related topics diff --git a/docs/studio-app/index.mdx b/docs/studio-app/index.mdx index 76e9762663..e7685c527d 100644 --- a/docs/studio-app/index.mdx +++ b/docs/studio-app/index.mdx @@ -30,7 +30,7 @@ green guide, points you to the next step along the way. - Go to [hyperframes.dev/studio](https://hyperframes.dev/studio) and choose **Download for macOS** (in Safari or Firefox the button is **Apple Silicon**, with an **Intel** link next to it). + Go to [hyperframes.studio/studio](https://hyperframes.studio/studio) and choose **Download for macOS** (in Safari or Firefox the button is **Apple Silicon**, with an **Intel** link next to it). Open the downloaded disk image and double-click **Install HyperFrames**. The installer copies the app into @@ -46,7 +46,7 @@ green guide, points you to the next step along the way. - Go to [hyperframes.dev/studio](https://hyperframes.dev/studio) and choose **Download for Windows**. You get + Go to [hyperframes.studio/studio](https://hyperframes.studio/studio) and choose **Download for Windows**. You get `Install-HyperFrames.exe`. @@ -58,7 +58,7 @@ green guide, points you to the next step along the way. - Go to [hyperframes.dev/studio](https://hyperframes.dev/studio) and choose **Download** next to Linux (.deb). + Go to [hyperframes.studio/studio](https://hyperframes.studio/studio) and choose **Download** next to Linux (.deb). You get `HyperFrames-amd64.deb` for 64-bit Intel and AMD computers on Debian, Ubuntu and their relatives. diff --git a/packages/cli/src/commands/publish.ts b/packages/cli/src/commands/publish.ts index ddbe4545c4..f5a8a027c2 100644 --- a/packages/cli/src/commands/publish.ts +++ b/packages/cli/src/commands/publish.ts @@ -313,7 +313,7 @@ export default defineCommand({ console.log(` ${c.dim("Access")} ${c.accent("Sign in required to claim")}`); console.log(); console.log( - ` ${c.dim("Open the claim URL on hyperframes.dev, sign in, and claim the project to continue editing.")}`, + ` ${c.dim("Open the claim URL on hyperframes.studio, sign in, and claim the project to continue editing.")}`, ); console.log(); const visibilityTip = diff --git a/packages/cli/src/help.ts b/packages/cli/src/help.ts index 82a7cc7fb1..27cd45ed0c 100644 --- a/packages/cli/src/help.ts +++ b/packages/cli/src/help.ts @@ -118,7 +118,7 @@ import type { Example } from "./commands/_examples.js"; const ROOT_EXAMPLES: Example[] = [ ["Create a new project", "hyperframes init my-video"], ["Start the live preview studio", "hyperframes preview"], - ["Publish to hyperframes.dev", "hyperframes publish"], + ["Publish to hyperframes.studio", "hyperframes publish"], ["Render to MP4", "hyperframes render -o out.mp4"], ["Transparent WebM overlay", "hyperframes render --format webm -o out.webm"], ["Validate your composition", "hyperframes lint"], diff --git a/packages/cli/src/server/desktopRoutes.test.ts b/packages/cli/src/server/desktopRoutes.test.ts index 625668621d..f77d354a1f 100644 --- a/packages/cli/src/server/desktopRoutes.test.ts +++ b/packages/cli/src/server/desktopRoutes.test.ts @@ -69,7 +69,7 @@ describe("open-in-desktop routes", () => { "/api/open-in-desktop", ) ).json(); - const downloadUrl = "https://hyperframes.dev/studio/download?os=windows&src=browser-editor"; + const downloadUrl = "https://hyperframes.studio/studio/download?os=windows&src=browser-editor"; expect(await get(false)).toEqual({ available: true, handoff: false, @@ -91,7 +91,7 @@ describe("open-in-desktop routes", () => { expect(await get(false)).toEqual({ available: true, handoff: false, - downloadUrl: "https://hyperframes.dev/studio/download?src=browser-editor", + downloadUrl: "https://hyperframes.studio/studio/download?src=browser-editor", os: "darwin", installed: false, }); diff --git a/packages/cli/src/utils/desktopApp.test.ts b/packages/cli/src/utils/desktopApp.test.ts index 5c4e24cc56..89ef05d0c0 100644 --- a/packages/cli/src/utils/desktopApp.test.ts +++ b/packages/cli/src/utils/desktopApp.test.ts @@ -22,7 +22,7 @@ import { } from "./desktopApp.js"; const LIVE = { ready: true, platform: "darwin" as const, env: {}, installed: () => true }; -const MAC_DOWNLOAD = "https://hyperframes.dev/studio/download?src=cli"; +const MAC_DOWNLOAD = "https://hyperframes.studio/studio/download?src=cli"; const MAC_HINT = `Keep editing by chatting with Framey in the HyperFrames desktop app → ${MAC_DOWNLOAD}`; const FILM = resolve("films", "a"); const never = () => { @@ -136,7 +136,7 @@ describe("openInDesktop", () => { ).toEqual({ opened: false, reason: "unsupported-platform", - downloadUrl: "https://hyperframes.dev/studio", + downloadUrl: "https://hyperframes.studio/studio", }); }); }); @@ -167,7 +167,7 @@ describe("openInDesktop on Windows", () => { expect(missing).toEqual({ opened: false, reason: "not-installed", - downloadUrl: "https://hyperframes.dev/studio/download?os=windows&src=cli", + downloadUrl: "https://hyperframes.studio/studio/download?os=windows&src=cli", }); const failed = openInDesktop(FILM, { ...WIN, exists: () => true, launch: () => false }); expect(failed).toMatchObject({ opened: false, reason: "open-failed" }); @@ -211,7 +211,7 @@ describe("openInDesktop on Linux", () => { const gone = { ...LINUX, read: (p: string) => moved[p] ?? null, exists: () => false }; expect(openInDesktop(FILM, { ...gone, launch: never })).toMatchObject({ reason: "not-installed", - downloadUrl: "https://hyperframes.dev/studio/download?os=linux&src=cli", + downloadUrl: "https://hyperframes.studio/studio/download?os=linux&src=cli", }); expect(openInDesktop(FILM, { ...LINUX, read: () => "{", launch: never })).toMatchObject({ reason: "not-installed", @@ -353,9 +353,9 @@ describe("desktopHint", () => { it("offers the Linux and Windows builds there, and nothing where there is no build", () => { expect(desktopHint(process.cwd(), { env: {}, platform: "linux", installed: false })).toBe( - `Keep editing by chatting with Framey in the HyperFrames desktop app → https://hyperframes.dev/studio/download?os=linux&src=cli`, + `Keep editing by chatting with Framey in the HyperFrames desktop app → https://hyperframes.studio/studio/download?os=linux&src=cli`, ); - const windowsHint = `Keep editing by chatting with Framey in the HyperFrames desktop app → https://hyperframes.dev/studio/download?os=windows&src=cli`; + const windowsHint = `Keep editing by chatting with Framey in the HyperFrames desktop app → https://hyperframes.studio/studio/download?os=windows&src=cli`; expect(desktopHint(process.cwd(), { env: {}, platform: "win32", installed: false })).toBe( windowsHint, ); diff --git a/packages/cli/src/utils/desktopApp.ts b/packages/cli/src/utils/desktopApp.ts index a0ecaf9632..a802abf737 100644 --- a/packages/cli/src/utils/desktopApp.ts +++ b/packages/cli/src/utils/desktopApp.ts @@ -11,7 +11,7 @@ import { writeRecord } from "./projectRecords.js"; const DESKTOP_BUNDLE_IDS = ["dev.hyperframes.desktop", "dev.hyperframes.desktop.canary"] as const; const DESKTOP_APP_NAMES = ["HyperFrames.app", "HyperFrames Canary.app"]; const APP_NAMES = ["HyperFrames", "HyperFrames Canary"] as const; -const STUDIO_PAGE = "https://hyperframes.dev/studio"; +const STUDIO_PAGE = "https://hyperframes.studio/studio"; const DOWNLOADS: Partial> = { darwin: `${STUDIO_PAGE}/download`, linux: `${STUDIO_PAGE}/download?os=linux`, diff --git a/skills-manifest.json b/skills-manifest.json index 5f70adf603..587f7e8b11 100644 --- a/skills-manifest.json +++ b/skills-manifest.json @@ -14,7 +14,7 @@ "files": 13 }, "hyperframes-registry": { - "hash": "221af9e7fbffe732", + "hash": "c70325ad4ad08849", "files": 13 }, "media-use": { diff --git a/skills/hyperframes-registry/references/contributing.md b/skills/hyperframes-registry/references/contributing.md index 28eb495704..de02d47661 100644 --- a/skills/hyperframes-registry/references/contributing.md +++ b/skills/hyperframes-registry/references/contributing.md @@ -120,7 +120,7 @@ hyperframes render -o preview.mp4 # Snapshot for visual QA hyperframes snapshot --at "1.0,3.0,5.0,7.0" -# Publish to hyperframes.dev for review +# Publish to hyperframes.studio for review npx hyperframes publish ``` @@ -152,7 +152,7 @@ npx tsx scripts/generate-registry-items.ts # 4. Generate catalog docs page npx tsx scripts/generate-catalog-pages.ts -# 5. Publish to hyperframes.dev so reviewers can preview +# 5. Publish to hyperframes.studio so reviewers can preview npx hyperframes publish # 6. Stage everything @@ -161,9 +161,9 @@ git add registry/{kind}/{name}/ registry/registry.json docs/catalog/ # 7. Commit git commit -m "feat(registry): add {name} — {one sentence}" -# 8. Push and open PR with hyperframes.dev link +# 8. Push and open PR with hyperframes.studio link git push origin feat/registry-{name} -gh pr create --title "feat(registry): {name}" --body "preview: {hyperframes.dev-url}" +gh pr create --title "feat(registry): {name}" --body "preview: {hyperframes.studio-url}" ``` **If you don't have a GitHub account:** you need one to open a PR. Sign up at https://github.com/signup, then run `gh auth login`.