Store Onions πŸ§…

Related tags

Guides swift data
Overview

OnionStash

Layered Data

Onion Layers

  • ID
  • Optional: Type
  • Optional: Meta
  • Value

Layerable

public protocol Layerable {
  func idLayer() -> String
  func typeLayer() -> String?
  func metaLayer() -> [String: String]?
  func valueLayer() -> Data
}
You might also like...
ipatool is a command line tool that allows you to search for iOS apps on the App Store and download a copy of the app package, known as an ipa file.
ipatool is a command line tool that allows you to search for iOS apps on the App Store and download a copy of the app package, known as an ipa file.

ipatool is a command line tool that allows you to search for iOS apps on the App Store and download a copy of the app package, known as an ipa file.

Valet lets you securely store data in the iOS, tvOS, or macOS Keychain without knowing a thing about how the Keychain works.

Valet Valet lets you securely store data in the iOS, tvOS, watchOS, or macOS Keychain without knowing a thing about how the Keychain works. It’s easy.

iOS command-line tool that allows searching and downloading ipa files from the iOS App Store

ipatool for iOS This is a port of Majd Alfhaily's ipatool adapted to run on iOS Build / Installation To build this, make sure you have AppSync install

An experimental clone of the new iOS 11 App Store app
An experimental clone of the new iOS 11 App Store app

appstore-clone An experimental clone of the new iOS 11 App Store app for this Medium Article Description Apple announced an entirely redesigned iOS Ap

YapDB is a collection/key/value store with a plugin architecture. It's built atop sqlite, for Swift & objective-c developers.
YapDB is a collection/key/value store with a plugin architecture. It's built atop sqlite, for Swift & objective-c developers.

YapDatabase is a collection/key/value store and so much more. It's built atop sqlite, for Swift & Objective-C developers, targeting macOS, iOS, tvOS &

Valet lets you securely store data in the iOS, tvOS, or macOS Keychain without knowing a thing about how the Keychain works. It’s easy. We promise.

Valet Valet lets you securely store data in the iOS, tvOS, watchOS, or macOS Keychain without knowing a thing about how the Keychain works. It’s easy.

Source code for the iOS app Screenshotter, on the App Store

Screenshotter This is the source code for the iOS app Screenshotter, available on the App Store. General Project Info Screenshotter is an Objective C

🌟🌟🌟🌟🌟 Falcon Messenger is a Fast and Beautiful cloud-based messaging app. With iOS and IPadOS Support. Available on the App Store.
🌟🌟🌟🌟🌟 Falcon Messenger is a Fast and Beautiful cloud-based messaging app. With iOS and IPadOS Support. Available on the App Store.

Open the FalconMessenger.xcworkspace in Xcode. Change the Bundle Identifier to match your domain. Go to Firebase and create new project. Select "Add F

A SwiftUI ScrollView Designed to imitate the App Store and Apple Music ScrollViews (with or without a Parallax Header)
A SwiftUI ScrollView Designed to imitate the App Store and Apple Music ScrollViews (with or without a Parallax Header)

FancyScrollView I spent a lot of time looking for a way to recreate the UI of the ScrollViews in Stock Apple Apps (i.e. App Store and Apple Music) ins

Repository to store the projects made during the 100 Days of Swift challenge by Paul Hudson of Hacking with Swift.

100DaysOfSwift πŸ“± Repository to store the projects made during the 100 Days of Swift challenge by Paul Hudson of Hacking with Swift. Days 1-12: Introd

πŸ’Ύ Safe, statically-typed, store-agnostic key-value storage written in Swift!

Storez πŸ’Ύ Safe, statically-typed, store-agnostic key-value storage Highlights Fully Customizable: Customize the persistence store, the KeyType class,

An Objective-C wrapper for RocksDB - A Persistent Key-Value Store for Flash and RAM Storage.

ObjectiveRocks ObjectiveRocks is an Objective-C wrapper of Facebook's RocksDB - A Persistent Key-Value Store for Flash and RAM Storage. Current RocksD

Key-Value store for Swift backed by LevelDB

SwiftStore Key/Value store for Swift backed by LevelDB. Usage Create instances of store import SwiftStore // Create a store. let store = SwiftStore(s

Why not use UserDefaults to store Codable objects πŸ˜‰

tl;dr You love Swift's Codable protocol and use it everywhere, who doesn't! Here is an easy and very light way to store and retrieve -reasonable amoun

A Distributed Value Store in Swift.
A Distributed Value Store in Swift.

Impeller is a Distributed Value Store (DVS) written in Swift. It was inspired by successful Distributed Version Control Systems (DVCSes) like Git and

Unidirectional, transactional, operation-based Store implementation.
Unidirectional, transactional, operation-based Store implementation.

Unidirectional, transactional, operation-based Store implementation for Swift and SwiftUI Overview Store eschews MVC in favour of a unidirectional dat

Domain Specific Language to safely build predicates and requests to fetch a CoreData store

SafeFetching This library offers a DSL (Domain Specific Language) to safely build predicates and requests to fetch a CoreData store. Also a wrapper ar

Integrate third party libraries by using Cocoapods and Swift Package Manager, store data in the cloud using Firebase Firestore.
Integrate third party libraries by using Cocoapods and Swift Package Manager, store data in the cloud using Firebase Firestore.

Integrate third party libraries by using Cocoapods and Swift Package Manager, store data in the cloud using Firebase Firestore. Exercising query and s

PBCircularProgressView is a circular progress view for iOS similar to the app store download progress view.
PBCircularProgressView is a circular progress view for iOS similar to the app store download progress view.

Overview PBCircularProgressView is a circular progress view for iOS similar to the app store download progress view. It also ha

Releases(0.2.0)
  • 0.2.0(Oct 19, 2021)

    Added

    • OnionBank πŸ§… 🏦
    • Logging
    • OnionStashable protocol
    • Fun typealiases
    • OnionBank Tests

    Examples

    Layerable Data
    struct User: Layerable, Codable, Equatable {
      var id = UUID().uuidString
      
      var name: String
      var isRegistered: Bool
      
      func idLayer() -> String {
        id
      }
      
      func typeLayer() -> String? {
        "\(User.self).\(isRegistered ? "Registered" : "Anon")"
      }
      
      func metaLayer() -> [String : String]? {
        ["tag": (name == "Anon") ? "0" : "1"]
      }
      
      func valueLayer() -> Data {
        name.data(using: .utf8)!
      }
    }
    
    Onion Stash
    var stash = OnionStash<User>()
    
    let someUser = User(name: "Leif", isRegistered: true)
    
    stash.add(value: someUser)
    stash.add(value: someUser)
    stash.add(value: someUser)
    
    XCTAssertEqual(stash.onions.count, 1)
    
    XCTAssertNotNil(stash.onion(forID: someUser.id))
    
    stash.add(
      values: (0 ..< 99999)
        .map { i in User(name: "Anon", isRegistered: i.isMultiple(of: 2)) }
    )
    
    XCTAssertEqual(stash.onions.count, 100000)
    XCTAssertEqual(stash.onions(forType: "User.Registered").count, 50001)
    
    Onion Bank
    var bank = OnionBank(
        stashableOnionTypes: OnionStash<A>.self, OnionStash<B>.self
    )
    
    XCTAssertEqual(bank.all.count, 2)
    
    bank.add(value: A(value: "First Bank Value"))
    
    try! bank.save()
    
    var loadedBank = OnionBank(
    stashableOnionTypes: OnionStash<A>.self, OnionStash<B>.self
    )
    
    dump(loadedBank)
    
    XCTAssertEqual((loadedBank.all[0] as? OnionStash<A>)?.onionSet.count, 1)
    
    try! bank.deleteAll()
    
    XCTAssertEqual(bank.all.count, 2)
    XCTAssertEqual((bank.all[0] as? OnionStash<A>)?.onionSet.count, 0)
    
    try! loadedBank.load()
    
    XCTAssertEqual(loadedBank.all.count, 2)
    XCTAssertEqual((loadedBank.all[0] as? OnionStash<A>)?.onionSet.count, 0)
    
    Source code(tar.gz)
    Source code(zip)
  • 0.1.0(Oct 12, 2021)

    Layerable Data

    struct User: Layerable, Codable, Equatable {
      var id = UUID().uuidString
      
      var name: String
      var isRegistered: Bool
      
      func idLayer() -> String {
        id
      }
      
      func typeLayer() -> String? {
        "\(User.self).\(isRegistered ? "Registered" : "Anon")"
      }
      
      func metaLayer() -> [String : String]? {
        ["tag": (name == "Anon") ? "0" : "1"]
      }
      
      func valueLayer() -> Data {
        name.data(using: .utf8)!
      }
    }
    

    Onion Stash

    var stash = OnionStash<User>()
    
    let someUser = User(name: "Leif", isRegistered: true)
    
    stash.add(value: someUser)
    stash.add(value: someUser)
    stash.add(value: someUser)
    
    XCTAssertEqual(stash.onions.count, 1)
    
    XCTAssertNotNil(stash.onion(forID: someUser.id))
    
    stash.add(
      values: (0 ..< 99999)
        .map { i in User(name: "Anon", isRegistered: i.isMultiple(of: 2)) }
    )
    
    XCTAssertEqual(stash.onions.count, 100000)
    XCTAssertEqual(stash.onions(forType: "User.Registered").count, 50001)
    
    Source code(tar.gz)
    Source code(zip)
Owner
Zach Eriksen
iOS Developer for From Now On LLC; Proud member of oneleif; I 🧑 Swift; Husband; Supporter for all
Zach Eriksen
🍎 An App to check whether a non-App Store app is in App Store.

AppStorify ?? An App to check whether a non-App Store app is in App Store. Benfits Use App Store's upgrade mechanism instead of app's. App Store apps

seedgou 58 Dec 7, 2022
daemon DICOMweb store proxying to pacs in c-store protocol

POSTCSTORE versionado versiΓ³n autor comentario 2021-11-02 Jacques Fauquex versiΓ³n inicial 2021-11-02 Jacques Fauquex aetLocal en la ruta del servicio.

null 1 Mar 18, 2022
Store-App - Store app made for IOS using Swift programming language

Store-App Store app views products, cart, and using login from https://fakestore

Anas Khalil 2 Jan 1, 2022
Design and prototype customized UI, interaction, navigation, transition and animation for App Store ready Apps in Interface Builder with IBAnimatable.

Design and prototype customized UI, interaction, navigation, transition and animation for App Store ready Apps in Interface Builder with IBAnimatable.

IBAnimatable 8.6k Jan 2, 2023
πŸ’Ύ Safe, statically-typed, store-agnostic key-value storage written in Swift!

Storez ?? Safe, statically-typed, store-agnostic key-value storage Highlights Fully Customizable: Customize the persistence store, the KeyType class,

Kitz 67 Aug 7, 2022
SwiftStore - Key/Value store for Swift backed by LevelDB.

SwiftStore Key/Value store for Swift backed by LevelDB. Usage Create instances of store import SwiftStore

Hemant Sapkota 119 Dec 21, 2022
Store and retrieve Codable objects to various persistence layers, in a couple lines of code!

tl;dr You love Swift's Codable protocol and use it everywhere, who doesn't! Here is an easy and very light way to store and retrieve Codable objects t

null 149 Dec 15, 2022
StorageManager - FileManager framework that handels Store, fetch, delete and update files in local storage

StorageManager - FileManager framework that handels Store, fetch, delete and update files in local storage. Requirements iOS 8.0+ / macOS 10.10+ / tvOS

Amr Salman 47 Nov 3, 2022
Customizable download button with progress and transition animations. It is based on Apple's App Store download button.

AHDownloadButton is a customizable download button similar to the download button in the latest version of Apple's App Store app (since iOS 11). It fe

Amer Hukić 465 Dec 24, 2022
A UICollectionViewLayout subclass displays its items as rows of items similar to the App Store Feature tab without a nested UITableView/UICollectionView hack.

CollectionViewShelfLayout A UICollectionViewLayout subclass displays its items as rows of items similar to the App Store Feature tab without a nested

Pitiphong Phongpattranont 374 Oct 22, 2022