Give your simulator superpowers

Give your Xcode
Simulator extra features

RocketSim 8.0: Enhance your iOS Simulator

RocketSim is a developer tool that gives your iOS Simulator extra functionalities to increase day-to-day development productivity. Floating windows become visible next to your active Simulator to provide additional functionalities while not being too intrusive. Some of the significant features include recordings with touches and bezels, performing actions on recent builds, and several design comparison features.

You can see this article as a detailed changelog of significant versions of RocketSim, meaning that you’ll also see old design implementations. The first paragraphs you read will represent the latest version available.

I’m guiding you through each feature, and I’ll share background stories and details where possible. If you can’t wait to get started: you can get RocketSim for free from the Mac App Store or explore all features on rocketsim.app.

RocketSim 8.0

RocketSim 8.0 was released on the 12th of May 2022 and introduced Grids, Rulers, and Derived Data deletion.

Grids

A grid overlay on top of the Simulator allows you to perfectly align elements within your views. The spacing is based on device pixels, matching what you configure in either SwiftUI or UIKit.

Grids are shown on top of the Simulator to align elements within your apps.
Grids are shown on top of the Simulator to align elements within your apps.

The spacing and color can be configured from the preferences panel to adjust the grid to match your preferred spacings.

Rulers

While grids are great for quickly aligning elements at a fixed spacing, you might want to have more precise control. What if your elements are not following a predefined spacing?

Rulers are the answer and allow you to horizontally or vertically align elements at any position.

Add horizontal and vertical rulers to align elements at any position.
Add horizontal and vertical rulers to align elements at any position.

Rulers can be placed horizontally and vertically and their position is shown within the ruler. Future versions will allow you to read out values between rulers.

Deleting Derived Data

Deleting Derived Data is still a common thing to do for many app developers. It allows resetting the state of a project to perform a clean build afterward. RocketSim 8.0 allows deleting the Derived Data either globally or per app.

Quickly delete Derived Data, either globally or per app.
Quickly delete Derived Data, either globally or per app.

Deleting Dervided Data per app is useful since it makes sure you only have to rebuild the app’s project. When you delete your complete Derived Data folder, you’ll have to rebuild all your Xcode projects including fetching SPM packages.

Community driven fixes

Besides introducing a few major new features, this update also includes several fixes based on community-reported bugs. Make sure to post any bugs or feature requests you have on GitHub!

  • Copy of asset now actually copies the file (Thanks, Hidde!)
  • The recent build menu now opens correctly on a second screen
  • Touch no longer appears in the bottom-left corner (Thanks, Amir, Rob!)
  • Floating action buttons now also appear after the conversion completes while hovering
  • The first touch is now captured as well during recordings
  • Floating thumbnails start a little higher to take into account the dock spacing
  • Onboarding images are no longer blurry on non-retina displays (Thanks, Kevin!)

RocketSim 7.0

RocketSim 7.0 was released on the 13th of March 2022 and introduced a new feature called Recent Builds.

Recent Builds

Performing actions on recent builds allows developers to access common folders quickly, reset permissions, or launch/uninstall an app.

Perform quick actions on recent builds in RocketSim.
Perform quick actions on recent builds in RocketSim.

As some of you might know I’m always seeking to increase productivity. The quick actions have been a booster for my personal productivity at least.

Opening common folders and user defaults

As a developer, I often look up the documents directory to find out how my app stores files. With the new recent builds’ quick actions, I can quickly open the Documents directory of the latest build for the current active Simulator. Not having to look up this directory manually is a significant productivity improvement for me, and I hope it will make you develop a little faster.

The user defaults action allows me to look into the user defaults for the currently installed application. It’s an easy way to verify my data saves as expected.

Grant, Revoke, or Reset Permissions

While implementing features that require permissions like location or photo access, we often need to reset permissions to verify our implementation works as expected. The permission quick actions allow you to quickly grant, revoke, or reset permissions and will allow you to test and develop such features faster.

Accessing quick actions from the status bar menu

The same quick actions are available through the status bar menu:

The quick actions can be accessed from the status bar menu as well
The quick actions can be accessed from the status bar menu as well

The list of recent builds within the status bar menu represents the most recent builds overall Simulators. The benefit of this is that you don’t have to keep a Simulator open to perform quick actions.

Updated configuration options

RocketSim 7.0 introduces a few extra configuration options to better align with your needs.

New appearance options allow you to customize the floating windows
New appearance options allow you to customize the floating windows

New in this version is the appearance options, allowing you to customize the floating windows. It might be that you’re not interested in the comparing window, in case you can now hide this section entirely.

Customize the way captures are processed and configure custom theming for your recordings.
Customize the way captures are processed and configure custom theming for your recordings.

The captures section represents both recordings and screenshots and allows you to configure custom theming as well as export location and quality of the export.

RocketSim 6.0

RocketSim 6.0 introduced the option to capture recordings and screenshots with device bezels. Capturing screenshots is entirely new and is mostly different from the default Xcode screenshot feature in adding device bezels around your captures.

Recordings with touches and device bezels

Recordings with touches and device bezels allow you to make a professional video of the app you’re developing. Xcode comes with a default recording option, but it has a few downsides:

  • Landscape recordings will be exported in portrait
  • Touches will not show up
  • You’ll always get a square output that doesn’t look like a phone at all

RocketSim solves this by allowing you to record with extra features:

  • Enable touches to explain better how your app responds to user interaction
  • Device Bezels create that professional impression you need
  • Export-ready for App Store Connect. Creating App Previews has never been easier
  • Landscape orientation is correctly applied in the exported video
  • A floating thumbnail with the resulting recording allows to drag into any destination easily
  • Select MP4 or GIF to match your needs
  • Trim videos for perfect lengths
  • Control the quality of exports for perfect performance

The resulting video could look as follows:

An example recording of the Xcode Simulator made by RocketSim

The device bezels make it look like an actual device recording while the touches explain the story along the way. The background color is configurable and can be adjusted to match your branding.

Beautiful screenshots with device bezels

Creating screenshots is something I like to do often during development. It allows me to demonstrate what I’m working on, and it’s the ultimate way of sharing what I’m proud of. The Xcode Simulator allows creating screenshots by pressing CMD + S but the outcome result was not satisfying enough.

With RocketSim 6.0, you can configure another shortcut like CMD+SHIFT+S to let RocketSim handle the screenshot creation. Doing so results in the following benefits:

  • Create multiple screenshots at once. The floating thumbnails will stack and stay there until you need the screenshot. This is great when you want to drag multiple screenshots into your pull request on GitHub.
  • Add device bezels around your screenshots to make it look like a real app on a real phone

An example screenshot could look as follows, in which I adjusted the background color to match the SwiftLee branding:

An example screenshot of the Xcode Simulator created with RocketSim 6.0, applying a SwiftLee branded background color.
An example screenshot of the Xcode Simulator created with RocketSim 6.0, applying a SwiftLee branded background color.

Floating thumbnails to keep you in your flow

Especially the resulting floating thumbnails allow me to stay in my flow during development. I can create multiple recordings and screenshots, stack them up, and drag them into the destination when I’m done.

The Xcode Simulator is joined by a few floating thumbnails of several captures.

The recording thumbnail allows trimming the output video alongside the default options to copy and save the asset. The thumbnails support dragging, making it easy to drop your captures in apps like Slack, iMessage, Twitter, or GitHub. A typical scenario is to drag the video right into the pull request to demonstrate what I’ve been working on.

App Store Connect App Preview requirements

Drag and drop the thumbnail into App Store Connect, Twitter, GitHub, Slack, or any other app.

If you’ve been creating App Store Previews, you know it comes with many requirements. RocketSim takes over this responsibility and makes sure your recordings conform to the rules set by App Store Connect. The only thing you have to do is drag your recording right into App Store Connect.

RocketSim 5.0

RocketSim 5.0 introduced touches for recordings and a design comparison tool, allowing you to create pixel-perfect implementations of delivered designs.

Comparing designs from Figma, Sketch, or any other source

A major new feature in RocketSim 5.0 is the ability to compare designs in the Simulator. You can either paste, select, or use drag & drop to select your design, after which an overlay will appear on the current active simulator:

Comparing a design in the iOS Simulator

The default selected overlay allows you to adjust the opacity of the selected design. This creates a way to determine which elements are pixel-perfect and which elements need to be adjusted a bit.

The split mode allows dragging between the implementation and the design overlay. This is just another way to compare and might give better visibility on the alignment of elements than your design.

Recording with Touches

One of the most requested features since the initial launch of RocketSim has been the ability to record with touches. A new recording window appears next to the active Simulator allowing you to configure the recording settings and start a new recording.

Record the iOS Simulator with Touches
Record the iOS Simulator with Touches

Touches make a big difference in explaining features in your app. It shows the source of an event and makes it easier to follow along, step by step.

The following video shows how deleting content works in the Collect by WeTransfer app. The right version with touches makes it much more clear how the feature works.

The same recording with and without touches.

Showing touches is a new feature that isn’t available in other tools like the Xcode Command Line tool xcrun simctl and makes RocketSim a unique app to have for sharing your recordings.

RocketSim 3.0

RocketSim 3.0 introduced the option to create GIF recordings and improved deeplinks managing.

Recording the Xcode iOS Simulator

RocketSim solves this problem by making it super easy to record the iOS simulator from its status bar menu.

Use RocketSim to create a recording of the iOS Simulator
Use RocketSim to create a recording of the iOS Simulator

It uses the focused simulator and starts recording directly after clicking “Start recording” from the menu. Recordings are automatically saved into a RocketSim subfolder of your Movies folder and the file is opened in Finder after the recording is stopped from the menu.

The only thing left is to copy and paste the video to share the problem, feature, or impressive animation with your team!

Universal Links make it possible to open content directly in your app. Transfer links get opened directly in the Collect App, location URLs in Apple Maps, and GitHub repositories inside the GitHub app. Those are examples of implementations that rely on universal linking.

Universal links, also known as deeplinks, can be hard to test. You have to manage all types of universal links and make it easy to open them in the simulator. Before RocketSim, I was keeping a list of links in notes, which I would copy into Safari on the simulator so I could open them with the Smart App Banner.

Right now, I’ve created groups for both staging and production so I can easily access them from the RocketSim menu. Those testing links are private but a similar group for Apple Maps could look as follows:

Testing universal links with RocketSim
Testing universal links with RocketSim

The greatest thing is that you can set a shortcut to re-run the latest launched deeplink. The shortcuts only work when the simulator is active so they don’t override other app shortcuts (I couldn’t use CMD+SHIFT+D for sending emails anymore, eat your own dog food!).

Last but not least, you can directly execute deeplinks from the clipboard. This helped me to quickly open a transfer that was shared with me to reproduce certain specific bugs. If you often have to test universal links in your app, this will be a great productivity booster.

Reporting bugs and feature requests

The project will not be open-sourced. Still, I decided to open a GitHub repository for managing bugs and feature requests. It allows me to develop in the open and get insights into what issues are most important for users to be fixed. Of course, it helps that I’m building a developer tool so I’m pretty sure that all my end users are familiar with GitHub.

Reporting a bug or requesting a feature is as simple as creating an issue in the RocketSim public repository.

Staying up to date on current development

You can follow active development on Twitter or get an overview of all features at rocketsim.app.

Download RocketSim

Ready to get started?

 

Featured SwiftLee Jobs

Loading RSS Feed

Browse more Swift related Jobs, or add your own on SwiftLee Jobs