Move the keyframe property defaults table into @hyperframes/core
Maintainers usually reply within 1 day
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 75/100
- Issue type
- Refactor
- Clarity
- Clearly specified
- Activity status
- Active
- Tech stack
- typescript
- Domain
- full-stack
Research direction
The duplicated table is KEYFRAME_PROPERTY_DEFAULTS in packages/sdk/src/engine/keyframeBackfill.ts and PROPERTY_DEFAULTS in packages/studio/src/hooks/gsapShared.ts. Read both to confirm they match, then check how each caller handles a property missing from the table: the SDK skips it, Studio falls back to 0. Done when one exported table lives in @hyperframes/core, both packages import it, the KEEP IN SYNC comment and TODO are gone, the existing sdk and studio tests pass, and a small core test covers the export.
Written by the indexing model from the issue text.
Description
Problem
The same table of keyframe property defaults is written out twice:
packages/sdk/src/engine/keyframeBackfill.ts(KEYFRAME_PROPERTY_DEFAULTS)packages/studio/src/hooks/gsapShared.ts(PROPERTY_DEFAULTS)
The SDK copy carries a comment saying the two must stay in sync, or keyframes written by the SDK drift from ones written by Studio, plus a TODO to move the table into @hyperframes/core. Today the two tables are identical, but nothing enforces that.
Proposed solution
Move the table into @hyperframes/core (both packages already depend on it), export it, and import it from both places. Keep each caller's current behaviour, including how it treats a property that isn't in the table: the SDK skips it, while Studio's callers fall back to 0.
Acceptance criteria
- One definition of the table, in
@hyperframes/core, imported by the SDK and Studio. - The "KEEP IN SYNC" comment and the TODO are removed.
- Existing tests in
packages/sdkandpackages/studiopass, and there's a small test in core covering the exported table.
- Dominant language
- TypeScript
- Stars
- 54.1k
- Forks
- 4.9k
- Avg merge
- 7h 39m
- Merged PRs (30d)
- 724
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from heygen-com/hyperframes
-
`hyperframes docs examples` lists templates that don't existPossibly taken @Muhtasim-Munif-Fahim claimed this today. Openbug difficulty/easy help wanted triage/ready
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
heygen-com/hyperframes#5393 · 1 comment ·
Maintainers usually reply within 1 day
-
lint: add tests for three caption rules that have nonePossibly taken A pull request linked to this issue is open or already merged. Opendifficulty/easy enhancement help wanted triage/ready
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
heygen-com/hyperframes#5388 ·
Maintainers usually reply within 1 day
-
docs: add open, catch-up, timeline and history to the CLI referencePossibly taken @meghna810 claimed this 1 day ago. Opendifficulty/easy documentation help wanted triage/ready
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
heygen-com/hyperframes#5386 · 1 comment ·
Maintainers usually reply within 1 day
-
gcp-cloud-run image pins Chrome 148, which drops `background-clip: text` glyphs inside layered children; the CLI's Chrome 152 paints themPossibly taken @user-github-me claimed this 2 days ago. Openbug difficulty/medium triage/ready
Difficulty 1/5 Under an hour Newbie friendliness 84/100
heygen-com/hyperframes#5117 ·
Maintainers usually reply within 1 day
-
Docs: clarify that "Enable auto-update" is only available in the Claude Code terminal (CLI) /plugin UIPossibly taken @rumi7911 claimed this 5 days ago. Opendifficulty/easy documentation triage/ready
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
heygen-com/hyperframes#5027 ·
Maintainers usually reply within 1 day
All issues in heygen-com/hyperframes
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day
-
Difficulty 1/5 Under an hour Newbie friendliness 82/100
homarr-labs/dashboard-icons#2939 ·
Maintainers usually reply within 1 day
-
Agent/category reasoning variants are still checked against the stale model cache in chat.paramsOpenopencode
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
code-yeongyu/oh-my-openagent#10003 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 77/100
Maintainers usually reply within 1 day
-
Actions on ToastsOpen
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
nextcloud-libraries/nextcloud-dialogs#2669 ·
Maintainers usually reply within 1 day