A GraphQL client for Elixir.
def deps do
[{:neuron, "~> 0.2.0"}]
end
iex> Neuron.Config.set(url: "https://example.com/graph")
iex> Neuron.Config.set(headers: [hackney: [basic_auth: {"username", "password"}]])
iex> Neuron.query("""
{
films {
title
}
}
""")
# Response will be:
{:ok, %Neuron.Response{body: %{"films" => []}, status_code: 200, headers: []}}
# You can also run mutations
iex> Neuron.mutation("YourMutation()")
Documentation can be found at https://hexdocs.pm/neuron.
Clone the repository
git clone git@github.com:uesteibar/neuron.git
Install dependencies
cd neuron
mix deps.get
To run the tests
mix test
To run the lint
mix credo
Pull requests are always welcome =)
The project uses standard-changelog to update the Changelog with each commit message and upgrade the package version.
For that reason every contribution should have a title and body that follows the conventional commits standard conventions (e.g. feat(connection): Make it smarter than Jarvis
).
To make this process easier, you can do the following:
Install commitizen
and cz-conventional-changelog
globally
npm i -g commitizen cz-conventional-changelog
Save cz-conventional-changelog
as default
echo '{ "path": "cz-conventional-changelog" }' > ~/.czrc
Instead of git commit
, you can now run
git cz
and follow the instructions to generate the commit message.