Monaka alternatives and similar libraries
Based on the "Data Structures / Algorithms" category.
Alternatively, view Monaka alternatives based on common mentions on social networks and blogs.
-
KeyPathKit
KeyPathKit is a library that provides the standard functions to manipulate data along with a call-syntax that relies on typed keypaths to make the call sites as short and clean as possible. -
BinaryKit
💾🔍🧮 BinaryKit helps you to break down binary data into bits and bytes, easily access specific parts and write data to binary. -
RandMyMod
RandMyMod base on your own struct or class create one or a set of instance, which the variable's value in the instance is automatic randomized. -
OneWaySynchronizer
The simplest abstraction to synchronize local data with remote source. For iOS, wirtten in swift.
CodeRabbit: AI Code Reviews for Developers

* 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 Monaka or a related project?
README
Monaka
Overview
Monaka convert custom struct and fundamental values to NSData (also nested array and dictionary).
Purpose
You can persistent store of your defined struct. Your defined struct is for example 'latest selected tab index', 'array of struct fetched from API' or 'current application state'. I think these should be represented as simple struct and can be stored in application. Converted data can be written in file or NSUserDefault.
Installation
Carthage
github "naru-jpn/Monaka"
CocoaPods
pod 'Monaka'
Usage
For Standard Variables
Packable
variable ⇄ NSData.
// Pack
let value: Int = 10
let data: NSData = Monaka.pack(value)
// Unpack
let unpacked = Monaka.unpack(data) as? Int
For Custom Struct
1.Make a custom struct confirming protocol CustomPackable
struct Sample: CustomPackable {
let id: String
// Return new struct from applied properties.
static var restoreProcedure: ([String : Packable] -> Packable?) = { (properties: [String : Packable]) -> Packable? in
guard let id = properties["id"] as? String else {
return nil
}
return Sample(id: id)
}
}
2.Activate your custom struct.
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
Monaka.activate(Sample)
// Other codes...
return true
}
3.Pack/Unpack
You can Pack/Unpack as standard types.
// Pack
let value: SampleStruct = SampleStruct(id: NSUUID().UUIDString)
let data: NSData = Monaka.pack(value)
// Unpack
let unpacked = Monaka.unpack(data) as? SampleStruct
License
Monaka is released under the MIT license. See LICENSE for details.
*Note that all licence references and agreements mentioned in the Monaka README section above
are relevant to that project's source code only.