npm package: @rocketdeploy/cli
Description: 🚀 RocketDeploy CLI - A powerful code push service for instant mobile app updates
Author: RocketDeploy Team
Latest version: 0.2.1

# 🚀 RocketDeploy CLI

> **Instant mobile app updates without app store approval**

RocketDeploy is a powerful code push service that enables you to deploy mobile app updates directly to your users' devices instantly. Skip the app store review process and deliver critical updates and new features in real-time.

[![npm version](https://badge.fury.io/js/%40rocketdeploy%2Fcli.svg)](https://badge.fury.io/js/%40rocketdeploy%2Fcli)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![Node.js](https://img.shields.io/badge/Node.js-12%2B-green.svg)](https://nodejs.org/)

## 🌐 Website

Visit our official website: **[https://rocketdeploy.io](https://rocketdeploy.io)**

## ⚡ Quick Start

### Installation

```bash
# Global installation (recommended)
npm install -g @rocketdeploy/cli

# Local installation
npm install @rocketdeploy/cli
```

### Basic Usage

```bash
# Login to RocketDeploy
rocketdeploy login

# Create a new app
rocketdeploy app add MyApp

# List your apps
rocketdeploy app list

# Create deployments
rocketdeploy deployment add MyApp Staging
rocketdeploy deployment add MyApp Production

# Release an update
rocketdeploy release-react MyApp Production
```

## 📱 Supported Platforms

- ✅ **React Native** (iOS & Android)
- ✅ **Cordova/PhoneGap** (iOS & Android)
- ✅ **Ionic** (iOS & Android)

## 🛠️ Key Features

### 🎯 **Instant Updates**
- Deploy JavaScript bundles without app store approval
- Critical bug fixes reach users in minutes, not days
- A/B testing with gradual rollouts

### 🔒 **Enterprise Ready**
- Role-based access control
- Deployment history and rollback
- Integration with CI/CD pipelines

### 📊 **Analytics & Monitoring**
- Real-time deployment metrics
- Error tracking and crash reports
- User adoption analytics

### 🌍 **Global CDN**
- Fast download speeds worldwide
- 99.9% uptime guarantee
- Automatic failover

## 📚 Commands

### Authentication
```bash
rocketdeploy login              # Login to RocketDeploy
rocketdeploy logout             # Logout from current session
rocketdeploy register           # Create a new account
```

### App Management
```bash
rocketdeploy app add <name>     # Create a new app
rocketdeploy app list           # List all apps
rocketdeploy app remove <name>  # Delete an app
rocketdeploy app rename <old> <new>  # Rename an app
```

### Deployment Management
```bash
rocketdeploy deployment add <app> <name>     # Create deployment
rocketdeploy deployment list <app>           # List deployments
rocketdeploy deployment history <app> <dep>  # View release history
rocketdeploy deployment clear <app> <dep>    # Clear deployment history
```

### Releasing Updates
```bash
rocketdeploy release-react <app> <deployment>  # Release React Native update
rocketdeploy release <app> <deployment>        # Release generic update
rocketdeploy promote <app> <from> <to>         # Promote between deployments
rocketdeploy rollback <app> <deployment>       # Rollback to previous version
```

## 🔧 Configuration

### Setting up your React Native app

1. **Install the client SDK:**
   ```bash
   npm install react-native-code-push
   ```

2. **Configure for iOS:**
   ```javascript
   // ios/YourApp/AppDelegate.m
   #import <CodePush/CodePush.h>
   
   - (NSURL *)sourceURLForBridge:(RCTBridge *)bridge {
   #ifdef DEBUG
     return [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index" fallbackResource:nil];
   #else
     return [CodePush bundleURL];
   #endif
   }
   ```

3. **Configure for Android:**
   ```javascript
   // android/app/src/main/java/.../MainApplication.java
   import com.microsoft.codepush.react.CodePush;
   
   @Override
   protected String getJSBundleFile() {
     return CodePush.getJSBundleFile();
   }
   ```

4. **Add to your React Native component:**
   ```javascript
   import codePush from 'react-native-code-push';
   
   class MyApp extends Component {
     componentDidMount() {
       codePush.sync();
     }
   }
   
   export default codePush(MyApp);
   ```

## 🏢 Enterprise Solutions

Need enterprise features? Contact our sales team:
- **Email:** enterprise@rocketdeploy.io
- **Phone:** +1 (555) 123-4567
- **Custom deployments** and **on-premise solutions** available

## 🤝 Community & Support

- 📖 **Documentation:** [docs.rocketdeploy.io](https://rocketdeploy.io/docs)
- 📧 **Support:** tom.chae@gmail.com
- 🌐 **Website:** [rocketdeploy.io](https://rocketdeploy.io)

## 📄 License

MIT License - see the [LICENSE](LICENSE) file for details.

---

<p align="center">
  <strong>Ready to revolutionize your mobile app deployment?</strong><br>
  <a href="https://rocketdeploy.io">Get started today</a> • 
  <a href="mailto:tom.chae@gmail.com">Contact us</a>
</p>

<p align="center">
  Made with ❤️ by the RocketDeploy Team
</p>