Skip to content

Latest commit

 

History

History
71 lines (59 loc) · 2.8 KB

README.md

File metadata and controls

71 lines (59 loc) · 2.8 KB

JSONExport

JSONExport is a desktop application for Mac OS X written in Swift. Using JSONExport you will be able to:

  • Convert any valid JSON object to a class of one of the currently supported languages.
  • Preview the generated content before saving it.
  • Include constructors only, utility methods only, both or none.
  • Change the root class name.
  • Set a class name prefix for the generated classes.
  • Set package name for Java files.

Generated Files

Each generated file, besid the getters and setters (for Java) can include:

  • A constructor wich accepts an instance of NSDictionary, JSON, JSONObject instance depending on the file language, and the class will use this object to fill its properties data.
  • A utility method which converts the class data into a dictionary again.

Currently supported languages

Currently you can convert your JSON object to one of the following lanaguages:

  1. Java for Android.
  2. Java for Android - to use with Realm.
  3. Swift Classes.
  4. Swift Classes - To use with SwiftyJSON library.
  5. Swift Classes - To use with Realm.
  6. Swift - CoreData.
  7. Swift Sturcutres.
  8. Objective-C - iOS.
  9. Objective-C - MAC.
  10. Objective-C - CoreData.
  11. Objective-C - To use with Realm.

Screenshot shows JSONExport used for a snippet from Twitter timeline JSON and converting it to Swift-CoreData. alt tag

Installation

Kindly clone the project, and build it using xCode 6.1+ on any Mac OS X 10.10 or above.

To Do

  • Support Objective-C Done
  • Sync multible classes with the same name or have the same exact properties Done
  • Support to parse JSON arrays of objects Done
  • Load JSON data from web
  • Open .json files with JSONExport
  • Supported languages management editor.

Known Issues:

  • When exporting to subclasses of NSManagedObject some data types can not be exported. For example core data does not have data type for "array of strings"; in turn, if your JSON contains an array of strings, the exported file will not compile without you fixing the type mismatch.

History log:

  • Version 0.0.4:

    • Sync multible classes with the same name or have the same exact properties.
    • Support to parse JSON arrays of objects.
  • Version 0.0.3:

    • Added support for Realm with Android.
    • Added support to specify parent class for all generated classes.

Final Note

The application still in its early stages. Please report any issue so I can improve it.

License

JSONExport is available under MIT license.