Skip to content
Native JSON library for Elixir https://hex.pm/packages/json
Elixir
Find file
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
lib
test
.gitignore
.travis.yml
AUTHORS
LICENSE
README.md
mix.exs
package.exs

README.md

Elixir JSON

Build Status

This library provides a natively implemented JSON encoder and decoder for Elixir.

All contributions are welcome.

Installing

Simply add { :json, github: "cblage/elixir-json"} to your project's mix.exs file, in the dependencies list and run mix deps.get json.

Example for a project that already uses Dynamo:

defp deps do
    [ { :cowboy, github: "extend/cowboy" },
      { :dynamo, github: "elixir-lang/dynamo" },
      { :json,   github: "cblage/elixir-json"} ]
end

Usage

  JSON.encode([result: "this will be a elixir result"])
  {:ok, "{\"result\":\"this will be a elixir result\"}"}
  JSON.decode("{\"result\":\"this will be a elixir result\"}")
  {:ok, [result: "this will be a elixir result"]}

Dynamo Filter

Elixir JSON includes a convenient filter for the Dynamo web framework.

If you want to use it, simply add Elixir JSON to your project's dependencies, and add the following line to your router:

filter JSON.Dynamo.Filter

Afterwards, to generate JSON responses, simply use conn.put_private and set the :result_object to whatever you want to be converted to JSON:

  get "/whoami" do
    conn.put_private :result_object, [ name: "Carlos", city: "New York", likes: "Programming" ]
  end

License

The Elixir JSON library is available under the BSD 3-Clause aka "BSD New" license

Something went wrong with that request. Please try again.