catverse/balam
Swift NoSQL functional database
Features
- NoSQL
- Minimum maintenance
- Frictionless migration
- Bullet proof
- Codable
- Combine
- Functional queries
- Swift Package Manager
Requirements
- iOS 13+
- macOS 10.15+
- watchOS 6+
Get Started
Install
Point Swift Package Manager to this repository
Import
import BalamUsage
Load or create a new database
let balam = Balam("MyDb")Add a Codable Struct to the database
let myStruct = MyStruct()
balam.add(myStruct)Get all items of a type
var subscription: AnyCancellable?
func getItems() {
subscription = balam.get(MyStruct.self).sink { items in
/***
items is an array with all items of type MyStruct.
Balam guaranties to send this array once, if no item was
found the array will be empty.
From here you can apply any transformation or function
to items: map, filter, sort, ...
**/
}
}Package Metadata
Repository: catverse/balam
Stars: 3
Forks: 0
Open issues: 0
Default branch: master
Primary language: swift
License: MIT
Topics: codable, combine, database, functional, ios, macos, nosql, spm, swift, swift-package, swift-package-manager, watchos
README: README.md