grape-entity
SimpleAMS
Our great sponsors
grape-entity | SimpleAMS | |
---|---|---|
1 | 1 | |
713 | 238 | |
-0.1% | - | |
4.8 | 0.0 | |
13 days ago | over 2 years ago | |
Ruby | Ruby | |
MIT License | - |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
grape-entity
-
Show HN: Shale – a Ruby object mapper and serializer for JSON, YAML and XML
Nice, it seems like a generic version of grape-entity https://github.com/ruby-grape/grape-entity
SimpleAMS
-
Show HN: Shale – a Ruby object mapper and serializer for JSON, YAML and XML
Serialization/deserialization is such an important part of web development, I have no idea why Rails includes the ancient JBuilder (and very slow since it goes through templating) library, instead of investing in a proper library. Let alone deserializing which is equally important..
I think the API Shale provides is pretty sane. I would probably use it in my next Ruby/Rails project. I don't like the fact that Nokogiri is included by default, it would be nice to declare a core type, and then bring in what you need (JSON, XML, YAML) as a different gem. But that's not a deal breaker for me.
I have created my own serializers in the past (SimpleAMS[1]) because I really detested AMS, no offence to AMS contributors, but AMS library should just die. Rails, and way more importantly Ruby, should come up with an "official" serializers/deserializers library that is flexible enough, rock solid and fast. For instance I had done some benchmarking among common serializer libraries [2] and AMS was crazy slow, without providing much flexibility, really (meaning, slowness is not justified). Others were faster, but were supporting only one JSON spec format (like jsonapi-rb).
Another thing is that most serialization libraries seem to have ActiveSupport as a main dependency (not shale though) which I think is a bit too much, and actually has a performance hit on the methods it provides. I really think that Ruby community can do better here ?
[1] https://github.com/vasilakisfil/SimpleAMS
What are some alternatives?
HappyMapper - Object to XML mapping library, using Nokogiri (Fork from John Nunemaker's Happymapper)
alba - Alba is a JSON serializer for Ruby, JRuby and TruffleRuby.
shale - Shale is a Ruby object mapper and serializer for JSON, YAML and XML. It allows you to parse JSON, YAML and XML data and convert it into Ruby data structures, as well as serialize data structures into JSON, YAML or XML.
oj_serializers - ⚡️ Faster JSON serialization for Ruby on Rails. Easily migrate away from Active Model Serializers.
Opal - Ruby ♥︎ JavaScript
shale-website - Landing page and interactive documentation for Shale - JSON/YAML/TOML/XML mapper and serializer for Ruby.