Latest 0.9.3
License MIT
Platforms osx 10.10, ios 8.0, tvos 9.0, watchos 2.0
Dependencies RxSwift, Action

alt text

Boomerang is a Swift 3 micro-framework for MVVM (Model-View-ViewModel) native applications.

Build Status
Cocoapods Compatible
Carthage compatible

⚠️ Warning ⚠️

Boomerang is currently under development. It can be used in production projects but breaking changes may occur until we reach v1.0
Documentation is on its way :)

What is it?

Boomerang’s main objective is to help developers to quickly build apps in a standard and clean way.
It enforces an architecture based on SOLID principles, implementing the MVVM pattern with some concepts from VIPER architecture and steering away from M(assive)VC.

With a clean architecture in mind it’s easier to quickly and harmlessly port an iOS app to macOS/tvOS and vice-versa, without affecting the business logic and the model logic of the entire software. At the end, the differences between platforms in a cross platform software should always be a matter of views.


  • iOS 8.0+ / Mac OS X 10.11+ / tvOS 9.0+ / watchOS 3.0+
  • Xcode 8.0+
  • Swift 3.0+

Before we begin

Boomerang is a framework, something that will heavily impact on your codebase and on how you design your app. It’s not a drag’n’drop library addressing a single task. It requires some basic understanding of what problem is trying to solve and what tools are involved in the process.



Boomerang is entirely written by Synesthesia team.

Latest podspec

    "name": "Boomerang",
    "version": "0.9.3",
    "summary": "Swift microframework for MVVM",
    "description": "Boomerang is a swift microframework for better crossplatform apps",
    "homepage": "",
    "license": {
        "type": "MIT",
        "file": ""
    "authors": "Stefano Mondino",
    "platforms": {
        "osx": "10.10",
        "ios": "8.0",
        "tvos": "9.0",
        "watchos": "2.0"
    "source": {
        "git": "",
        "tag": "0.9.3"
    "source_files": "Sources/*.{swift,h,m}",
    "ios": {
        "source_files": "Sources/UIKit/**.{swift}"
    "tvos": {
        "source_files": "Sources/UIKit/*.{swift}"
    "module_map": "Sources/module.modulemap",
    "dependencies": {
        "RxSwift": [
            "~> 3.0"
        "Action": [
            "~> 2.1"
    "pushed_with_swift_version": "3.0"

Pin It on Pinterest

Share This