Today we decided to release our Action Data suite of backend controls designed to quickly and easily add support for several common databases and data formats (such as SQLite, JSON and CloudKit) to your iOS, tvOS or macOS apps as a Open Source project under the MIT License on GitHub.
There were several factors behind this decision but the biggest one was to give back to the developer community and to hopefully grow Action Data into must have tool for working with data in Swift and Xcode.
Action Data provides both light weight, low-level access to the data sources along with high level Object Relationship Management (ORM) support using Swift 4’s new Codable, Encodable and Decodable protocols and our custom Encoders and Decoders to move data between the data source and your custom data models with minimal code.
Using our Action Data Providers you can either manipulate data directly using SQL (even on data sources that do not typically provide SQL support) or create a Swift Class or Struct conforming to the ADDataTable protocol and have the Data Provider handle all of the heavy lifting for you.
Additionally, we expose our Action SQL Parser to you to provide support for your own custom data sources. The ADSQLParser provides the ability to parse text containing one or more SQL commands into an Action Data SQL Document Object Model (DOM) that can easily be executed against a data source.