mathiasbynens / mathiasbynens/base64

Bad performance with Hermes Engine

Open
#19 0 comments 4 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
JavaScript
Stars
519
Forks
98
PR merge metrics
No merged PRs in 30d

Description

Hello, I am using this package in a React Native app.
The problem is that while using the Hermes Engine the string concatenation with `+=` is very slow.

With this issue [https://github.com/facebook/hermes/issues/111](url) one of Herme's developers suggested to use `output` as an array and `push` elements to it and finally `join` everything.
Can this package be modified to support those kinds of optimizations and be used with the new Hermes Engine?

Thank you

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 inspecting the package's JavaScript encoding path and the string-concatenation logic described in the issue. Compare it with the suggested array/push/join approach for Hermes, then verify that base64 output remains compatible and that performance improves in a React Native Hermes app.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, react-native
Domain
mobile-dev, performance
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.