fastlane vs Shake
fastlane
fastlane.toolsShake
shakebuild.comSide by side
| Figure | fastlane | Shake |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| Windows | Yes | Yes |
| macOS | Yes | Yes |
| Linux | Yes | Yes |
| iOS | Yes | — |
| Android | Yes | — |
| Plans published | 1 | 1 |
| Spec score · Build Automation Software | 8.7 (#4) | 7.8 (#18) |
| Installation | The preferred installation method is Bundler; the documentation also describes Homebrew on macOS and RubyGems installation. | The site’s getting-started instructions say to install Haskell Stack and then run `stack install shake`. |
| Integrations | The documentation says fastlane integrates with more than 400 tools and services and lists major CI systems such as GitHub Actions, GitLab CI, Jenkins, and CircleCI. | Shake can execute Ninja files, allowing integration with CMake and Meson. |
| License | The project is licensed under the MIT license. | Shake is an open source project under the BSD license. |
| Purpose | fastlane is an open source platform for automating development and release workflows for iOS and Android apps. | Shake is a Haskell library for writing build systems as an alternative to tools such as make, Ant, and Scons. |
| Support | The documentation directs users to search existing GitHub issues and submit an issue with setup details, including the output of fastlane env, if needed. | Users can ask questions through the mailing list or Stack Overflow, and report bugs through GitHub issues. |
Plans
In their own words
fastlane
fastlane is a free, open-source platform for automating iOS and Android app development and release workflows. Teams define workflows as lanes and can run them with a single command. A lane can manage build numbering, code signing, builds, beta uploads and changelog creation; fastlane also supports store releases, including metadata and screenshot management and submission for review. It can create localized app store screenshots for the languages and devices an app supports. The site lists support for more than 15 beta testing services, including TestFlight, Crashlytics Beta, Play and Hockey. Documentation describes integrations with more than 400 tools and services, including major CI systems, alongside community-built actions and plugins. For iOS signing, signing identities and profiles can be kept in a private encrypted Git repository and synced between machines. fastlane runs on a user's machine or server, and its documentation says credentials and other sensitive information stay there. macOS is officially supported; Linux and Windows are partially supported. The project uses the MIT license.
Shake
Shake is an open-source Haskell library for writing build systems, positioned as an alternative to make, Ant, and SCons. Build rules can discover dependencies after earlier rules run, including dependencies revealed by generated files. Supported dependency inputs include files, file existence, environment variables, directory contents, and user-defined values. Shake provides parallel and multicore builds, resource constraints, build caching, and avoids rebuilding outputs when dependency changes do not alter results. Profiling reports can include plots, tables, graphs, and explanations of what built and why. It reports estimated completion time and percentage complete, with progress information usable in continuous-integration systems such as Team City. Shake can execute Ninja files for integration with CMake and Meson, and can build projects using mixed languages, including C/C++, Docker, JavaScript, HTML, and CSS. Build definitions are Haskell programs, although the manual targets readers without prior Haskell knowledge. Shake runs on Linux, macOS, and Windows and is licensed under BSD. Installation uses Haskell Stack followed by `stack install shake`.