FireRecord is a framework written in swift which brings the ActiveRecord architecture as a wrapper to Firebase SDK on iOS
class User: FireRecord {
var age: Int?
var name: String?
var photo: FirebaseImage?
}
let user = User()
user.name = "Jhon"
user.photo = FirebaseImage(UIImage())
user.save { error in print(error ?? errorMessage) }
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")}
}
user.name = "My new Name"
user.update { error in print(error ?? errorMessage) }
user.destroy { error in print(error ?? errorMessage)}
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")
}
FireRecord is available through CocoaPods. To install it, simply add the following line to your Podfile:
pod "FireRecord"
- Victor Alisson, [email protected]
- David Sanford, [email protected]
FireRecord is available under the MIT license. See the LICENSE file for more info.