# bang590/JSPatch

JSPatch bridge Objective-C and Javascript using the Objective-C runtime. You can call any Objective-C class and method in JavaScript by just including a small engine. JSPatch is generally used to hotfix iOS App.

Repository: https://github.com/bang590/JSPatch
Canonical: https://ross.abutalabs.com/products/jspatch
Language: Objective-C
License: MIT
License Family: permissive
Topics: jspatch, hotfix, jsbridge, objc-runtime
Last push: 2020-12-01T02:18:35+00:00

## Health v2 (maintenance only)
Score: 32/100 (v2, computed 2026-09-03T02:39:23.370411+00:00)
- activity 0, release rhythm 35, longevity 100
- inputs: {"age_days": 4119, "days_push": 2102, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: no_releases
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 11331, forks 2212 (observed 2026-08-28T04:10:46.758063+00:00)

## What it is
JSPatch is a library that bridges Objective-C and JavaScript using the Objective-C runtime, allowing JavaScript code to call any Objective-C class and method. It is primarily used to hotfix iOS apps dynamically by replacing or patching Objective-C code at runtime without resubmitting to the App Store.

## Use cases
- hotfix bugs in an iOS app without an App Store release
- call Objective-C classes and methods from JavaScript
- replace Objective-C method implementations dynamically at runtime
- add new modules or features to a shipped iOS app via scripts
- patch native iOS code using JavaScript downloaded from a server

## When to choose
- you need to dynamically patch or fix a shipped Objective-C iOS app
- you want to script native iOS behavior from JavaScript using the Objective-C runtime
- you maintain a legacy Objective-C iOS codebase that needs runtime code replacement

## When to avoid
- you are building a new Swift-only or SwiftUI app with modern tooling
- you need App Store-safe hotfixing, since Apple has restricted this approach
- you want an actively developed solution - the project has seen little activity since 2020

## Facets
- artifact type: library
- maturity: maintenance
- function: sdk, interpreter, developer-tools
- domain: mobile-development, developer-tools
- platform: -
- tags: hotfix, jsbridge, objc-runtime, dynamic-patching, ios-app-patching, ios, macos, objective-c, javascript

## Member repositories
- bang590/JSPatch (main) score 32

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:10:46.758063+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T17:15:56.857370+00:00, confidence not recorded.
  - readme: https://github.com/bang590/JSPatch (fetched 2026-08-28T04:10:46.758063+00:00, sha 3eb36e29eb4e)
- Data as of 2026-08-30T08:39:29.467469+00:00.
