Skip to content

callstackincubator/rock

Repository files navigation

Rock

🪨 Rock is a modular toolkit for teams building React Native apps. It helps improve build times and developer experience while fitting into your existing workflows and infrastructure.


Key Features

☁️ Remote Build Cache
Save up to 96% of build time by reusing native artifacts (APK, AAB, APP, IPA) across machines and CI. Use built‑in integrations for GitHub, S3, and R2 or bring your own storage.

🔗 Brownfield ready
Add React Native to existing iOS and Android apps using Rock Brownfield.

🔌 Modular & Extensible
A plugin‑driven architecture that lets you customize platforms, bundlers, cache providers, and more.

🖥️ Cross‑platform‑ready
iOS and Android by default; designed to extend to TVs, macOS, and Windows (coming soon).

⚡ Easy Community CLI Migration
A familiar CLI that helps you develop, run, and build your app. Migrate from Community CLI in minutes.

Installation

Choose your path based on your current situation:

Creating a new project

Consider Expo First
For new projects, we recommend starting with Expo for the best developer experience and similar remote caching capabilities. Rock is designed for teams who have outgrown the Community CLI.

To create a fresh React Native app with Rock, open a terminal and run:

npm create rock

Migrating an existing Community CLI project

To migrate an existing project, open a terminal in your project root and run:

npm create rock

Adding to an existing native project

To add React Native to an existing iOS or Android app with Rock, use our Brownfield plugins:

npm create rock
# ...
◆  What plugins do you want to start with?
│  ◼ brownfield-ios
│  ◼ brownfield-android

For detailed instructions, please follow our Integrating with Native Apps documentation.

Documentation

Visit rockjs.dev to learn more about the framework, why we created it, how it can be useful to you, and how to use it in more advanced scenarios.

Contributing

Read our contributing guidelines to learn how you can contribute with bug reports, documentation, and code.

Made with ❤️ at Callstack

Rock is an open source project and will always remain free to use. If you think it's cool, please star it 🌟. Callstack is a group of React and React Native geeks. Contact us at [email protected] if you need any help with these technologies or just want to say hi!