All Projects → johnlui → Jsonneverdie

johnlui / Jsonneverdie

Licence: mit
Auto reflection tool from JSON to Model, user friendly JSON encoder / decoder, aims to never die

Programming Languages

swift
15916 projects

Labels

Projects that are alternatives of or similar to Jsonneverdie

Laravel Api Response Builder
Builds nice, normalized and easy to consume Laravel REST API JSON responses.
Stars: ✭ 433 (-7.08%)
Mutual labels:  json
Normalizr
Normalizes nested JSON according to a schema
Stars: ✭ 20,721 (+4346.57%)
Mutual labels:  json
Mongodb Json Files
📦 A curated list of JSON / BSON datasets from the web in order to practice / use in MongoDB
Stars: ✭ 456 (-2.15%)
Mutual labels:  json
Camaro
camaro is an utility to transform XML to JSON, using Node.js binding to native XML parser pugixml, one of the fastest XML parser around.
Stars: ✭ 438 (-6.01%)
Mutual labels:  json
Fastjson
Smallest, fastest polymorphic JSON serializer
Stars: ✭ 446 (-4.29%)
Mutual labels:  json
Jl
Functional sed for JSON
Stars: ✭ 449 (-3.65%)
Mutual labels:  json
Pysimdjson
Python bindings for the simdjson project.
Stars: ✭ 432 (-7.3%)
Mutual labels:  json
Json Viewer
A JSON viewer plugin for Notepad++. Displays the selected JSON string in a tree view.
Stars: ✭ 464 (-0.43%)
Mutual labels:  json
Centrifuge
Real-time messaging library for Go with scalability in mind
Stars: ✭ 446 (-4.29%)
Mutual labels:  json
Sleekdb
Pure PHP NoSQL database with no dependency. Flat file, JSON based document database.
Stars: ✭ 450 (-3.43%)
Mutual labels:  json
Logstash Logger
Ruby logger that writes logstash events
Stars: ✭ 442 (-5.15%)
Mutual labels:  json
Cjsonobject
Ultralightweight JSON parser in C++ based on cJSON
Stars: ✭ 445 (-4.51%)
Mutual labels:  json
Plank
A tool for generating immutable model objects
Stars: ✭ 449 (-3.65%)
Mutual labels:  json
Flatcc
FlatBuffers Compiler and Library in C for C
Stars: ✭ 434 (-6.87%)
Mutual labels:  json
Partiql Lang Kotlin
A implementation of PartiQL written in Kotlin.
Stars: ✭ 459 (-1.5%)
Mutual labels:  json
Tinydb
TinyDB is a lightweight document oriented database optimized for your happiness :)
Stars: ✭ 4,713 (+911.37%)
Mutual labels:  json
Swiftyjson
The better way to deal with JSON data in Swift.
Stars: ✭ 21,042 (+4415.45%)
Mutual labels:  json
Wiremock
A tool for mocking HTTP services
Stars: ✭ 4,790 (+927.9%)
Mutual labels:  json
Hearthstonejson
JSON files for Hearthstone - Website code
Stars: ✭ 459 (-1.5%)
Mutual labels:  json
Superjson
Safely serialize JavaScript expressions to a superset of JSON, which includes Dates, BigInts, and more.
Stars: ✭ 446 (-4.29%)
Mutual labels:  json

JSONNeverDie is an auto reflection tool from JSON to Model, a user friendly JSON encoder / decoder, aims to never die. Also JSONNeverDie is a very important part of Pitaya.

中文介绍

Example

set up a Model:

class People: JSONNDModel {
    @objc var name = ""
}

reflex JSON to Model automatic:

let json = JSONND(string: "{\"name\": \"JohnLui\"}")
let people = People(JSONNDObject: json)
print(people.name)

Features

reflection features

  • [x] JSON to Model reflection automatic
  • [x] auto reflection with no need of init()
  • [x] supports multi-level reflection

Read the documentation of auto reflection.

JSON encode / decode features

  • [x] supports all types: Int, Double, Bool, String, Array
  • [x] user friendly: Xcode can prompt all available types
  • [x] provides both Optional-type(Int?) and Original-type(Int)

And JSONNeverDie is well tested.

Requirements

  • iOS 7.0+
  • Swift 4 (Version 3) in current swift4 branch
  • Swift 3 (Version 2) in swift3 branch
  • Swift 2.x / Xcode 7 (Version 1.x) in master branch

##Contribution

You are welcome to fork and submit pull requests.

##License

JSONNeverDie is open-sourced software licensed under the MIT license.

中文介绍

基本示例

构建一个 Model:

class People: JSONNDModel {
    @objc var name = ""
}

从字符串转换成 JSON 再自动映射为 Model:

let json = JSONND(string: "{\"name\": \"JohnLui\"}")
let people = People(JSONNDObject: json)
print(people.name)

中文文档

参与开源

欢迎提交 issue 和 PR,大门永远向所有人敞开。

开源协议

本项目遵循 MIT 协议开源,具体请查看根目录下的 LICENSE 文件。

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].