Sync - JSON to Core Data and back. Swift Core Data Sync.

  •        144

Sync eases your everyday job of parsing a JSON response and syncing it with Core Data. Sync is a lightweight Swift library that uses a convention-over-configuration paradigm to facilitate your workflow. Syncing JSON to Core Data is a repetitive tasks that often demands adding a lot of boilerplate code. Mapping attributes, mapping relationships, diffing for inserts, removals and updates are often tasks that don't change between apps. Taking this in account we took the challenge to abstract this into a library. Sync uses the knowledge of your Core Data model to infer all the mapping between your JSON and Core Data, once you use it, it feels so obvious that you'll wonder why you weren't doing this before.

https://github.com/3lvis/Sync

Tags
Implementation
License
Platform

   




Related Projects

CoreStore - Unleashing the real power of Core Data with the elegance and safety of Swift

  •    Swift

Upgrading from CoreStore 4.2 (Swift 3.2) to 5.x (Swift 4.x)? Check out the new features and make sure to read the Change logs. CoreStore is now part of the Swift Source Compatibility projects.

Zephyr - Effortlessly synchronize UserDefaults over iCloud.

  •    Swift

Zephyr synchronizes specific keys and/or all of your UserDefaults over iCloud using NSUbiquitousKeyValueStore. Zephyr has built in monitoring, allowing it to sync specific keys in the background as they change.

FTASync - Allows you to sync CoreData entities with a Parse backend.

  •    Objective-C

Allows you to sync CoreData entities with a Parse backend. FTASync supports relationships (many-to-many have not been tested), conflict resolution (last in wins), custom data class names, and multiple levels of inheritance. For conflict resolution each relationship is in it's own conflict domain, but all entity attributes are currently in a single conflict domain. As with any open source code, do your own due diligence before putting this in a production app! There are a few known issues that still need addressed. They are listed below.

RestKit - RestKit is a framework for consuming and modeling RESTful web resources on iOS and OS X

  •    Objective-C

RestKit is designed to be modular and each module strives to maintain a minimal set of dependencies across the framework and with the host platform. At the core of library sits the object mapping engine, which is responsible for transforming objects between representations (such as JSON/XML <-> local domain objects). The object mapping engine is built on top of the Key-Value Coding (KVC) informal protocol that is foundational to numerous Cocoa technologies such as key-value observing, bindings, and Core Data. Object mappings are expressed as pairs of KVC key paths that specify the source and destination attributes or relationships that are to be transformed.

Graph - Graph is a semantic database that is used to create data-driven applications.

  •    Swift

Graph is a semantic database that is used to create data-driven applications. Embedded frameworks require a minimum deployment target of iOS 8 or OS X Yosemite (10.10).


sync-dotenv - Keep your .env in sync with .env.example

  •    TypeScript

Projects often rely on environmental variables stored in a .env file to run... and because these variables sometimes contain sensitive data, we never add them to source control. Instead, these variables are added e.g. to a .env.example file so it's easy to get the project running for other developers. However, it's very easy to forget to update this file when a variable is added/updated in .env (during development). This can make it difficult for devs to get the project running (locally) because they rely on .env.example file to setup their environment (with their own configs). sync-dotenv automates the process of keeping your .env in sync with .env.example.

Serpent - A protocol to serialize Swift structs and classes for encoding and decoding.

  •    Swift

Serpent (previously known as Serializable) is a framework made for creating model objects or structs that can be easily serialized and deserialized from/to JSON. It's easily expandable and handles all common data types used when consuming a REST API, as well as recursive parsing of custom objects. Designed for use with Alamofire. It's designed to be used together with our helper app, the Model Boiler, making model creation a breeze.

Active Directory Sync

  •    

Sync AD with SharePoint lists. Free Community edition allows you to sync upto 200 user accounts. Commercial edition allows sync with multiple lists. Both editions allow simple and complex schedule jobs to be created. GREAT FOR AD USER DATA VISUALIZATION IN SHAREPOINT

rump - Hot sync two Redis servers using dumps.

  •    Go

Hot sync two Redis databases using dumps. There's no easy way to get/sync data from an AWS ElastiCache Redis cluster.

Core-Data-Editor - Core Data Editor lets you easily view, edit and analyze applications‘ data

  •    Objective-C

Core Data Editor lets you easily view, edit and analyze applications‘ data. Core Data Editor is compatible with Mac and iOS applications and supports XML, SQLite and binary stores, visualizes all relationships and is able to edit the data and generate Objective-C code for the data model. Core Data Editor will guide you through a short setup process when you initially launch the app. This setup process is entirely optional. You can skip over each and every step if you know what you are doing. It is recommended that you take your time and go though the setup process. It only takes a few minutes.

ScpSync

  •    CSharp

FTP / SFTP batch sync tool for Administrators to sync (User) data between a local computer and server. FTP / SFTP login data is secured. Synchronize in both directions and supports deletes in target. This Project use the WinSCP Sync Function.

Swashbuckle.AspNetCore - Swagger tools for documenting API's built on ASP.NET Core

  •    CSharp

Swagger tooling for API's built with ASP.NET Core. Generate beautiful API documentation, including a UI to explore and test operations, directly from your routes, controllers and models.In addition to its Swagger generator, Swashbuckle also provides an embedded version of the awesome swagger-ui that's powered by the generated Swagger JSON. This means you can complement your API with living documentation that's always in sync with the latest code. Best of all, it requires minimal coding and maintenance, allowing you to focus on building an awesome API.

Gloss - A shiny JSON parsing library in Swift :sparkles:

  •    Swift

The Gloss source currently available via CocoaPods and Carthage is compatible with Swift 4.0. To use the lastest version compatible with Swift 3.0, utilize version 1.2.x.

Sync Fx Contrib

  •    

Sync Fx Contrib is a collection of community-developed extensions, third party providers, samples and reference applications for Microsoft Sync Framework.

GO Contact Sync Mod

  •    CSharp

Sync Outlook contacts and notes with Google

CoreValue - Lightweight Framework for using Core Data with Value Types

  •    Swift

Swift introduced versatile value types into the iOS and Cocoa development domains. They're lightweight, fast, safe, enforce immutability and much more. However, as soon as the need for CoreData in a project manifests itself, we have to go back to reference types and @objc. CoreValue is a lightweight wrapper framework around Core Data. It takes care of boxing value types into Core Data objects and unboxing Core Data objects into value types. It also contains simple abstractions for easy querying, updating, saving, and deleting.

kibi - Kibi is a friendly - kept in sync - Kibana fork which add support for joins across indexes and external sources, tabbed navigation interface and more

  •    Javascript

Kibi extends Kibana 5.5.2 with data intelligence features; the core feature of Kibi is the capability to join and filter data from multiple Elasticsearch indexes and from SQL/NOSQL data sources ("external queries").In addition, Kibi provides UI features and visualizations like dashboard groups, tabs, cross entity relational navigation buttons, an enhanced search results table, analytical aggregators, HTML templates on query results, and much more.

Sync Gateway - Connects Couchbase Lite to Couchbase Server

  •    Go

Sync Gateway connects Couchbase Lite to Couchbase Server. It manages HTTP-based data access for Couchbase Lite mobile clients, Leverages Couchbase Server as it's horizontally scalable backing data store, Clustered into a horizontally scalable tier, Provides access control and data routing.

Transporter - Sync data between persistence engines, like ETL only not stodgy

  •    Go

Compose Transporter helps with database transformations from one store to another. It can also sync from one to another or several stores.Transporter allows the user to configure a number of data adaptors as sources or sinks. These can be databases, files or other resources. Data is read from the sources, converted into a message format, and then send down to the sink where the message is converted into a writable format for its destination. The user can also create data transformations in JavaScript which can sit between the source and sink and manipulate or filter the message flow.

iOS-Hierarchy-Viewer - iOS Hierarchy viewer - View and Coredata debugging made easy

  •    Objective-C

iOS Hierarchy Viewer allows developers to debug their hierarchies for both UIView's and CoreData models. since 1.4.6 version, we also give you debugging Core Data API in your project (if you use it). See 'Instruction' section to set it up.