Show HN: Runway – Release apps with less bouncing between Jira/GH/CI/Apple/Slack
runway.team
runway.team
Our team met back in 2013 building Rent the Runway’s iOS app together, and we’ve spent the years since then working on mobile app teams of all sizes. Everywhere we went, getting iOS or Android releases out the door was always an "event". Someone would be stuck spending hours with multiple Chrome tabs open checking on the status of different tools, killing time while waiting for builds to upload, Slacking the owners of various tasks, and referring back to a 40-line Google spreadsheet with the team’s specific release process. With all the context-switching and mental overhead, it made it hard to get anything else done.
While some build-centric tasks can be automated (e.g. using fastlane or scripts), we see that a lot of the overhead of releases is actually very people-centric: keeping your PM up to date on progress, looping in marketing for release notes, or syncing with QA on the status of regression testing. We also noticed that, even with a solid CI pipeline in place, there are still lots of manual tasks along the way - build selection, branching and tagging, compiling changelogs, etc.
Runway connects all those dots — it’s the tool we wish we had on our old app teams. It pulls in all Jira tickets and code relevant to the release, side-by-side, to surface and resolve any out-of-sync tickets or code. You can set up custom, interactive checklists with item-specific owners to replace the monster Google spreadsheet, and our Slack integration will ping the appropriate people or notify everyone when important milestones happen. Design/marketing can enter ‘What’s New’ release notes directly in Runway for all localizations (with a handy list of new features in the release to reference) without you having to hunt them down. Plus, Runway helps teams maintain good workflow hygiene by automatically tagging releases in GitHub and applying missing labels to Jira tickets. We’re working on further automation to make releases as hands-off as possible: from kickoff, to submit, to release.
We’re excited to talk to more teams and the HN community at large about their unique release process challenges (and general thoughts as well!)
But in general - it is tricky, and I think the perfect balance changes depending on what type of a team we're talking about. We've talked to small teams, larger ones with more complex structures (like multiple product teams all contributing code to a single binary), but also teams who are fairly agnostic about their branching and tooling setup, and those who are more opinionated.
There is certainly a version of Runway that could be much more prescriptive (and limited) for teams who prefer more guidance in setting up a release toolchain. For now, we're trying to hit a sweet spot of enough flexibility to meet the needs of most teams, while encouraging best practice in a few areas that we think will streamline everyone's process.
It's an ongoing conversation and it's really helpful to hear from individual teams on how Runway could help in their specific situation.
I'm curious how the product can effectively support unique/customized workflows across different teams? How do you guys think about that?
So far we've tried to hit a balance between the two, informed as much as possible by our pilot teams and our gauge on what will most effectively serve the most teams to start. Will definitely be an ongoing conversation.
Notably, coordinating communication and understanding the status of the work between multiple team members wouldn't come into play, but there would still be value in seeing the status of individual steps and tools consolidated together, as well as reconciling code + tickets, and understanding overall progress towards a release.
A version of Runway that is more explicitly geared towards solo developers is certainly something we've thought about and may dig into further!
We do currently notify your team in Slack of any changes to your review status in App Store Connect. Providing further detail about your rejection reason is 100% something that’s on our roadmap for the “App Review” step, along with making it clear who owns the task of responding to rejections if needed.
One question - does this only work for public releases or will it also help me with internal distribution (e.g. ad hoc/testflight for iOS)?
We do support Bitrise! And CircleCI, GitHub Actions, GitLab CI, and Jenkins. We're adding more integrations regularly, and we prioritize as we hear from teams with specific needs.
There's also the reality that coordinating app releases often includes wrangling dependencies on backend services.
All of the above is definitely on our radar… stay tuned!