wcandillon / wcandillon/react-native-webgpu

Feature request: Split binaries into separate packages?

Open
#304 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
1.2k
Forks
70
Avg merge
1d 6h
Merged PRs (30d)
23

Description

Currently, react-native-wgpu .tar is quite heavy, 163 MB. The vast majority of that size are generated binaries for Android and iOS.

Unfortunately, this makes GitHub reject this .tar file if checked out into the repository (e.g. for use in Yarn Offline mirror that makes your project resilient to npm outages), as the maximum file size in GitHub is 100 MB.

Many packages deal with this issue (knowingly or not) by splitting shipped binaries into multiple packages, for example esbuild:

Image

This would also open up other possibilities like selectively installing only these binaries that one is interested in, e.g. iOS only, significantly reducing bandwith needed to install the repository.

Contributor guide

No contributing guide indexed for this repository

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.

Research direction

Start by tracing the package and release configuration that produces the 163 MB react-native-wgpu tarball, including where Android and iOS binaries are assembled. Compare the issue's esbuild example and define the package layout and installation behavior needed to keep each published artifact under GitHub's 100 MB limit while allowing platform-selective installation.

Written by the indexing model from the issue text.

Assessment

Tech stack
react-native, typescript
Domain
mobile, release
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.