Latest 0.2.0
Homepage https://github.com/victoraliss0n/FireRecord
License MIT
Platforms ios 11.0
Dependencies FirebaseCommunity/Database, FirebaseCommunity/Storage, HandyJSON
Authors

Version
License
Platform

Swift 4.0

FireRecord is a framework written in swift which brings the ActiveRecord architecture as a wrapper to Firebase SDK on iOS

Example

Inherit from FireRecord

class User: FireRecord {
var age: Int?
var name: String?
var photo: FirebaseImage?
}

Init your model

let user = User()
user.name = "Jhon"
user.photo = FirebaseImage(UIImage())

Save

user.save { error in print(error ?? errorMessage) }

Read

User.all { users in
users.flatMap{ $0.name }.forEach{ print($0) }
}

User.findFirst { user in
print(user.name ?? "First users doesn't have name")
}

User.findLast { user in
print(user.name ?? "Last users doesn't have name")
}

User.findFirst(3) { users in
users.forEach { user in print(user.name ?? " User doesn't have name")}
}

User.findLast(3) { users in
users.forEach { user in print(user.name ?? " User doesn't have name")}
}

Update

user.name = "My new Name"
user.update { error in print(error ?? errorMessage) }

Delete

user.destroy { error in print(error ?? errorMessage)}

Query

User.order(byProperty: "name").where(value: "Alisson").find { users in
users.flatMap{ $0.name }.forEach{ print($0) }                          //print all names
}

Professional.order(byProperty: "phone").where(value: "98984933").find { professionals in
professionals.flatMap{ $0.phone }.forEach{ print($0) }                //print all phones
}

User.order(byProperty: "name").findLast { user in
print(user.name ?? "Property not present")
}

User.order(byProperty: "name").findLast(3) { users in
print(users.count)
}

User.order(byProperty: "name").findFirst { user in
print(user.name ?? "Property not present")
}

Requirements

Installation

FireRecord is available through CocoaPods. To install
it, simply add the following line to your Podfile:

pod "FireRecord"

Authors

License

FireRecord is available under the MIT license. See the LICENSE file for more info.

Latest podspec

{
    "name": "FireRecord",
    "version": "0.2.0",
    "summary": "Swift ActiveRecord-inspired model for Firebase.",
    "description": "An ActiveRecord architecture above coreData written in Swift. PS: We are still in the early phase of the projectnTODO: Add long description of the pod here.",
    "homepage": "https://github.com/victoraliss0n/FireRecord",
    "license": {
        "type": "MIT",
        "file": "LICENSE"
    },
    "authors": {
        "Victor Alisson": "[email protected]"
    },
    "source": {
        "git": "https://github.com/victoraliss0n/FireRecord.git",
        "tag": "0.2.0"
    },
    "platforms": {
        "ios": "11.0"
    },
    "source_files": "FireRecord/Source/**/*",
    "dependencies": {
        "FirebaseCommunity/Database": [],
        "FirebaseCommunity/Storage": [],
        "HandyJSON": [
            ">= 4.0.0-beta.0"
        ]
    },
    "pushed_with_swift_version": "4.0"
}

Pin It on Pinterest

Share This