Skip to main content

Generate Mantle models using JSON files

Project description

JSON2Mantle
========================

Generate [Mantle](https://github.com/Mantle/Mantle) models using JSON files.

##Quick start

### Install

```
$ sudo pip install JSON2Mantle
```

### Usage

```
$ json2mantle [-h] [--prefix PREFIX] [--author AUTHOR]
json_file output_dir
```

### Example

```
$ json2mantle api_model.json class --prefix XYZ --author "John Smith"
```

will generate Mantle models according to your `api_model.json` structure. The output files will be created under `output_dir` directory, the author name will be `John Smith`, and the Objective-C classes have the prefix `XYZ`.

## Features

* Supports nested JSON data, which means JSON2Mantle can generate the correct number of classes that the JSON file contains.
* Convert field name like `var_name` to `varName` automatically.
* Author name is grabbed from Address Book by default (Python 2 on OS X only).
* Python 2/3 compatible.
* Generated Objective-C files are documented.

## Note

* When reserved words in Objective-C appear, it will replace the original name with a prefix `model`. For instance, if you have a field with the name `id`, the generated one would be `modelId`.
* Only supports generating Objective-C files.
* If the input JSON file is an array, it will ask you to give a name for the array items.

## TODO
- [ ] reserved words
- [ ] URL type
- [ ] Unit test

## License
The MIT License (MIT)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

JSON2Mantle-0.0.9.tar.gz (7.3 kB view details)

Uploaded Source

File details

Details for the file JSON2Mantle-0.0.9.tar.gz.

File metadata

  • Download URL: JSON2Mantle-0.0.9.tar.gz
  • Upload date:
  • Size: 7.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for JSON2Mantle-0.0.9.tar.gz
Algorithm Hash digest
SHA256 d46f37ed2b64a57b8cf01129591be0a9f7270d1ce19668d66cabf6b5c368351f
MD5 25fb3bdcf6398927855eeb61dd5a6e84
BLAKE2b-256 531997dcb1bf6cd29a1ae630b48390a308c40d110e35f1a8ee5663cf752b9754

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page