# microsoft/code-push

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/microsoft-code-push).**

4,415 stars · 532 forks · TypeScript · NOASSERTION · archived

## Links

- GitHub: https://github.com/microsoft/code-push
- Homepage: https://microsoft.github.io/code-push/
- awesome-repositories: https://awesome-repositories.com/repository/microsoft-code-push.md

## Topics

`codepush` `cordova` `react` `react-native` `reactnative`

## Description

Code-push is a cloud-based over-the-air update service designed to deliver JavaScript and asset updates to mobile applications. It allows for the distribution of application binaries and hotfixes without requiring a full application reinstall or the traditional app store review and approval process.

The system distinguishes itself through targeted deployment capabilities, allowing updates to be delivered to specific user demographics and cohorts. It supports the synchronization of active release versions between a cloud backend and the installed client to manage deployment states across different environments.

The platform covers a broad range of operational capabilities, including the management of application metadata, the automation of deployment lifecycles, and the collection of health and stability metrics. It provides tools for monitoring release adoption rates, retrieving installation counts, and gathering crash reports to analyze the impact of updates.

The project is implemented using TypeScript.

## Tags

### Mobile Development

- [Over-the-Air Updates](https://awesome-repositories.com/f/mobile-development/distribution-updates/over-the-air-updates.md) — Delivers updated JavaScript and asset bundles directly to devices to bypass app store review cycles.
- [Dynamic Bundle Updates](https://awesome-repositories.com/f/mobile-development/mobile-app-analytics/react-native-integrations/dynamic-bundle-updates.md) — Sends code changes directly to React Native mobile devices without waiting for app store approval.
- [Mobile Release Orchestration](https://awesome-repositories.com/f/mobile-development/mobile-release-orchestration.md) — Organizes application releases into distribution groups and promotes builds across different environments.
- [Release Distribution Management](https://awesome-repositories.com/f/mobile-development/android-applications/android-app-execution/android-app-downloads/release-distribution-management.md) — Manages the delivery of application packages to registered end user devices and distribution groups. ([source](https://docs.microsoft.com/en-us/appcenter/distribution/codepush/))
- [Cross-Platform Binary Distribution](https://awesome-repositories.com/f/mobile-development/cross-platform-binary-distribution.md) — Delivers compiled application binaries to end user devices and organizes them into distribution groups. ([source](https://docs.microsoft.com/en-us/appcenter/distribution/codepush/cli/))
- [Mobile Analytics Suites](https://awesome-repositories.com/f/mobile-development/mobile-analytics-suites.md) — Monitors installation metrics, release adoption rates, and device-specific crash reports.
- [Over-the-Air Update Systems](https://awesome-repositories.com/f/mobile-development/over-the-air-update-systems.md) — Updates mobile applications built with Cordova by pushing new bundles instantly over the air.

### Part of an Awesome List

- [Segmented Update Delivery](https://awesome-repositories.com/f/awesome-lists/devtools/electron-integrations/update-delivery-systems/segmented-update-delivery.md) — Delivers specific software updates to defined user demographics based on targeting criteria. ([source](http://microsoft.github.io/code-push/))

### DevOps & Infrastructure

- [Cohort-Based Rollouts](https://awesome-repositories.com/f/devops-infrastructure/deployment-management/deployment-configuration/dynamic-user-targeting/hierarchical-group-targeting/cohort-based-rollouts.md) — Segments devices into specific cohorts using metadata tags to roll out updates to a subset of users.
- [Remote Hotfix Delivery](https://awesome-repositories.com/f/devops-infrastructure/deployment-management/installation-package-management/binary-and-source-installation/remote-binary-updaters/remote-hotfix-delivery.md) — Ships critical bug fixes directly from release branches to active deployments via OTA bundles. ([source](http://microsoft.github.io/code-push/))
- [Mobile Application Deployment Managers](https://awesome-repositories.com/f/devops-infrastructure/mobile-application-deployment-managers.md) — Distributes application binaries and hotfixes to specific user groups across different environments.
- [Over-the-Air Update Services](https://awesome-repositories.com/f/devops-infrastructure/over-the-air-update-services.md) — Provides the capability to update application logic by swapping JavaScript layers without requiring a new native binary.
- [Remote Configuration Management](https://awesome-repositories.com/f/devops-infrastructure/remote-configuration-management.md) — Provides centralized cloud-based management and versioning of application settings and metadata to target specific user demographics.
- [Deployment Automation](https://awesome-repositories.com/f/devops-infrastructure/deployment-automation.md) — Promotes application releases across different environments using automated deployment scripts. ([source](https://cdn.jsdelivr.net/gh/microsoft/code-push@master/README.md))

### Data & Databases

- [Application State Synchronizations](https://awesome-repositories.com/f/data-databases/application-state-synchronizations.md) — Synchronizes the active release version between the cloud backend and the installed client application.

### Development Tools & Productivity

- [Differential Update Packages](https://awesome-repositories.com/f/development-tools-productivity/package-installers/software-update-managers/differential-update-packages.md) — Transmits only changed portions of application bundles to minimize data usage and installation time.
- [Client Manifest Tracking](https://awesome-repositories.com/f/development-tools-productivity/version-monitoring/deployed-version-tracking/client-manifest-tracking.md) — Implements local version manifests to determine when a device needs to download a newer deployment.

### Software Engineering & Architecture

- [Adoption & Stability Metrics](https://awesome-repositories.com/f/software-engineering-architecture/code-patching-engines/patch-generators/automated-patch-appliers/applied-patch-tracking/adoption-stability-metrics.md) — Monitors population-level installation metrics and rollback data to analyze how users are adopting new application updates. ([source](http://microsoft.github.io/code-push/))

### System Administration & Monitoring

- [Crash Reporters](https://awesome-repositories.com/f/system-administration-monitoring/diagnostic-tools/diagnostics/failure-analysis-tools/crash-reporters.md) — Gathers diagnostic information and technical crash reports from devices to identify and resolve stability issues. ([source](https://docs.microsoft.com/en-us/appcenter/distribution/codepush/))
- [Metrics Retrieval](https://awesome-repositories.com/f/system-administration-monitoring/logging/metrics-retrieval.md) — Offers RESTful access to installation counts and release history to evaluate the success of specific application deployments. ([source](https://cdn.jsdelivr.net/gh/microsoft/code-push@master/README.md))
- [Application Health Monitors](https://awesome-repositories.com/f/system-administration-monitoring/monitoring-and-observability/observability-platforms/operational-health-alerting/health-monitoring-endpoints/application-health-monitors.md) — Tracks performance and stability metrics to help developers diagnose the root cause of runtime issues in mobile applications. ([source](http://microsoft.github.io/code-push/))
- [Release Health Monitoring](https://awesome-repositories.com/f/system-administration-monitoring/release-health-monitoring.md) — Tracks installation metrics, crash reports, and adoption rates to ensure the stability of new updates.
