StorageManager alternatives and similar libraries
Based on the "Database" category.
Alternatively, view StorageManager alternatives based on common mentions on social networks and blogs.
-
MMKV
An efficient, small mobile key-value storage framework developed by WeChat. Works on Android, iOS, macOS, Windows, and POSIX. -
Realm
Realm is a mobile database: a replacement for Core Data & SQLite -
WCDB
WCDB is a cross-platform database framework developed by WeChat. -
SQLite.swift
A type-safe, Swift-language layer over SQLite3. -
GRDB.swift
A toolkit for SQLite databases, with a focus on application development -
SwiftyUserDefaults
Modern Swift API for NSUserDefaults -
YapDatabase
YapDB is a collection/key/value store with a plugin architecture. It's built atop sqlite, for Swift & objective-c developers. -
ParseAlternatives
GraphQLite is a toolkit to work with GraphQL servers easily. It also provides several other features to make life easier during iOS application development. [Moved to: https://github.com/relatedcode/GraphQLite] -
Couchbase Mobile
Lightweight, embedded, syncable NoSQL database engine for iOS and MacOS apps. -
FCModel
An alternative to Core Data for people who like having direct SQL access. -
UserDefaults
Simple, Strongly Typed UserDefaults for iOS, macOS and tvOS -
CTPersistance
iOS Database Persistence Layer with SQLite, your next Persistence Layer! -
MongoKitten
Native MongoDB driver for Swift, written in Swift -
Unrealm
Unrealm is an extension on RealmCocoa, which enables Swift native types to be saved in Realm. -
Prephirences
Prephirences is a Swift library that provides useful protocols and convenience methods to manage application preferences, configurations and app-state. UserDefaults -
RealmIncrementalStore
Realm-powered Core Data persistent store -
ObjectBox
Swift database - fast, simple and lightweight (iOS, macOS) -
UserDefaultsStore
Why not use UserDefaults to store Codable objects ๐ -
PredicateEditor
A GUI for dynamically creating NSPredicates at runtime to query data in your iOS app. -
Nora
Nora is a Firebase abstraction layer for FirebaseDatabase and FirebaseStorage -
realm-cocoa-converter
A library that provides the ability to import/export Realm files from a variety of data container formats. -
MySQL
A stand-alone Swift wrapper around the MySQL client library, enabling access to MySQL servers. -
SecureDefaults
Elevate the security of your UserDefaults with this lightweight โจ wrapper that adds an additional layer of AES-256 encryption -
PersistenceKit
Store and retrieve Codable objects to various persistence layers, in a couple lines of code! -
PersistentStorageSerializable
Swift library that makes easier to serialize the user's preferences (app's settings) with system User Defaults or Property List file on disk. -
YapDatabaseExtensions
YapDatabase extensions for use with Swift -
TypedDefaults
TypedDefaults is a utility library to type-safely use NSUserDefaults. -
MongoDB
A stand-alone Swift wrapper around the mongo-c client library, enabling access to MongoDB servers. -
ObjectiveRocks
An Objective-C wrapper for RocksDB - A Persistent Key-Value Store for Flash and RAM Storage. -
PostgreSQL
A stand-alone Swift wrapper around the libpq client library, enabling access to PostgreSQL servers. -
SQLite
A stand-alone Swift wrapper around the SQLite 3 client library. -
Storez
๐พ Safe, statically-typed, store-agnostic key-value storage written in Swift! -
FileMaker
A stand-alone Swift wrapper around the FileMaker XML Web publishing interface, enabling access to FileMaker servers.
Appwrite - The Open Source Firebase alternative introduces iOS support
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of StorageManager or a related project?
Popular Comparisons
README
StorageManager
FileManager framework that handels Store, fetch, delete and update files in local storage.
Requirements
- iOS 8.0+ / macOS 10.10+ / tvOS 9.0+ / watchOS 2.0+
- Xcode 10.2+
- Swift 5.0+
Installation
CocoaPods
CocoaPods is a dependency manager for Cocoa projects. You can install it with the following command:
$ gem install cocoapods
CocoaPods 1.1+ is required to build StorageManager.
To integrate StorageManager into your Xcode project using CocoaPods, specify it in your Podfile
:
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '9.0'
use_frameworks!
target '<Your Target Name>' do
pod 'StorageManager'
end
Then, run the following command:
$ pod install
Carthage
Carthage is a decentralized dependency manager that builds your dependencies and provides you with binary frameworks.
You can install Carthage with Homebrew using the following command:
$ brew update
$ brew install carthage
To integrate StorageManager into your Xcode project using Carthage, specify it in your Cartfile
:
github "iAmrSalman/StorageManager" ~> 0.1.2
Run carthage update
to build the framework and drag the built StorageManager.framework
into your Xcode project.
Swift Package Manager
The Swift Package Manager is a tool for automating the distribution of Swift code and is integrated into the swift
compiler. It is in early development, but StorageManager does support its use on supported platforms.
Once you have your Swift package set up, adding StorageManager as a dependency is as easy as adding it to the dependencies
value of your Package.swift
.
dependencies: [
.package(url: "https://github.com/iAmrSalman/StorageManager.git", from: "0.1.2")
]
Usage
Store
Dictionary:
let exampleDictionary = ["foo": "bar", "x": 3, "pi": 3.1415, "names": ["Amr", "Salman"]]
try! StorageManager.default.store(dictionary: exampleDictionary, in: "exampleDictionary")
Array:
let exampleArray = ["foo", "bar", "x", "y"]
try! StorageManager.default.store(dictionary: exampleArray, in: "exampleArray")
Data:
let exampleData = Data()
try! StorageManager.default.store(data: exampleData, jsonType: .array, in: "exampleData")
Update
let newX = 5
try! StorageManager.default.update(vlaue: newX, forKey: "x", in: "exampleDictionary")
Delete
try! StorageManager.default.clear("exampleData")
Fetch
Single value
let x: Int = try! StorageManager.default.singleValue(forKey: "x", in: "exampleDictionary")
Array
let exampleArray: [String] = try! StorageManager.default.arrayValue("exampleArray")
Array as value for key
let names: [String] = try! StorageManager.default.arrayValue(forKey: "names", in: "exampleDictionary")
Dictionary
let exampleDictionary: [String: Any] = try! StorageManager.default.dictionaryValue("exampleDictionary")
Author
Amr Salman, [email protected]
License
StorageManager is available under the MIT license. See the LICENSE file for more info.
*Note that all licence references and agreements mentioned in the StorageManager README section above
are relevant to that project's source code only.