Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Move the keyframe property defaults table into @hyperframes/core

Open Beginner friendly
#5,387 1 comment 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

@meghna810 is already working on this.

Since Oct 10, 2026.

  • #5438 by @meghna810 — open

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

difficulty/easy enhancement help wanted triage/ready

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/sdk and packages/studio pass, 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

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from heygen-com/hyperframes

All issues in heygen-com/hyperframes

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.