GithubHelp home page GithubHelp logo

weslindsay / turf Goto Github PK

View Code? Open in Web Editor NEW

This project forked from turfdb/turf

0.0 1.0 0.0 187 KB

A SQLite based key-value database written entirely in Swift

License: MIT License

Ruby 0.25% Swift 99.58% Objective-C 0.18%

turf's Introduction

Turf

Turf is a document store database built entirely in Swift using SQLite.

Built from the ground up to take advantage of Swift's type system, it has fully support for persisting any struct, class, enum or even tuple.

Turf makes heavy use of generics and Swift 2's protocol constraints to provide a very safe API for reading, writing and query collections.

Features

  • 100% support for Swift value types (struct, enum, tuple).
  • Type safe collections.
  • Non-invasive approach to persisting any model - no subclasses, no protocols.
  • Multiple connection support.
  • Object caching - Skip deserializing objects if they have previously been deserialized on the same connection
  • Thread safety. Turf is safe even across multiple connections. Only one connection can write to the database at any given time yet you can read from multiple threads at the same time!
  • Secondary indexing. Index any persisted or computed properties of your models for fast querying.
  • Strongly typed queries - No more strings and NSPredicates
  • Reactive - Observe changes to any collection with the ability to filter down and watch a specific row change.
  • Migrations framework built in. Your requirements change, so rather than forcing you to devise your own migration framework, Turf already has one.

You can play with Turf in these Playgrounds.

Example

Coming soon

Installation

Requirements: Swift 2.2

Carthage

  1. Add the following to your Cartfile

github "TurfDb/Turf"

  1. Run cartage update

CocoaPods

Coming soon

Usage

Coming soon

License

Turf is available under the MIT license. See the LICENSE file for more info.

turf's People

Contributors

robertfalconer avatar weslindsay avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.