Skip to main content

Set up the repository

HyperFrames uses Bun for workspace operations. Do not add a pnpm-lock.yaml or replace bun.lock. Start Studio while working on UI or composition behavior:
Studio listens on http://localhost:5190 when run from the monorepo.

Check your change

Run the smallest relevant test while iterating, then the repository gates before opening a pull request:
For a composition, run the gates from the project directory, or pass it:
Registry items need a different command. They ship as <name>.html or demo.html, and the CLI resolves a project by looking for index.html, so pointing it at an item directory fails with “No composition found” — which is how two gsap_non_transform_motion errors once reached main unlinted. Use the script that mounts each item into a throwaway project first, exactly where hyperframes add would put it:
The pre-commit hooks format staged files and run checks for the files you changed.

Work in the right package

For Studio changes, verify the behavior in the browser and preserve the source-patching and capability-gate contracts described in the Studio docs.

Pull request requirements

  • Keep the change focused and explain the user-visible reason for it.
  • Add or update tests when behavior changes.
  • Use a conventional PR title such as fix: preserve audio after seeking.
  • Run formatting, lint, typecheck, and relevant tests.
  • Include screenshots or a short capture for visual changes.
  • Target prerelease-only work to the branch described in Release channels.
Use GitHub Issues for bugs and proposals. A useful bug report includes the smallest reproduction, the first exact error, npx hyperframes info, and the operating system. By contributing, you agree that your work is licensed under the Apache 2.0 License and follows the Code of Conduct.