FireRecord 0.2.0

FireRecord 0.2.0

TestsTested
LangLanguage SwiftSwift
License MIT
ReleasedLast Release Oct 2017
SwiftSwift Version 4.0
SPMSupports SPM

Maintained by Victor Alisson, David Sanf0rd.



 
Depends on:
FirebaseCommunity/Database>= 0
FirebaseCommunity/Storage>= 0
HandyJSON>= 4.0.0-beta.0
 

  • By
  • Victor Alisson




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.