Popularity
8.8
Stable
Activity
0.0
Stable
427
12
93

Monthly Downloads: 720
Programming language: Elixir
License: Apache License 2.0
Latest version: v0.9.0

tirexs alternatives and similar packages

Based on the "ElasticSearch" category.
Alternatively, view tirexs alternatives based on common mentions on social networks and blogs.

Do you think we are missing an alternative of tirexs or a related project?

Add another 'ElasticSearch' Package

README

Build Status HEX version HEX downloads Deps Status

An Elixir flavored HTTP client and DSL library for building JSON based settings, mappings, queries to Elasticsearch engine.

Getting Started

  1. Add this to the defp deps do list in your mix.exs file:
  {:tirexs, "~> 0.8"}
  1. Also in mix.exs, add :tirexs to the :applications list in def application.
  2. In config/dev.exs, configure tirexs:
   # The default uri is http://127.0.0.1:9200
   config :tirexs, :uri, "http://127.0.0.1:9200"

See lib/tirexs/env.ex for more configuration options.

  1. Index a document:
  import Tirexs.HTTP

  put("/my_index/users/1", [name: "Jane", email: "[email protected]"])
  # {:ok, 201,
  #  %{_id: "1", _index: "my_index", _type: "users", _version: 1, created: true}}
  1. Fetch the document:
  get("/my_index/users/1")
  #  {:ok, 200,
  #   %{_id: "1", _index: "my_index",
  #     _source: %{email: "[email protected]", name: "Jane"}, _type: "users",
  #     _version: 1, found: true}}
  1. Simplified search:
  get("/my_index/users/_search?q=name:jane")
  #  {:ok, 200,
  #   %{_shards: %{failed: 0, successful: 5, total: 5},
  #     hits: %{hits: [%{_id: "1", _index: "my_index", _score: 0.30685282,
  #          _source: %{email: "[email protected]", name: "Jane"}, _type: "users"}],
  #       max_score: 0.30685282, total: 1}, timed_out: false, took: 10}}
  1. Query DSL
  import Tirexs.Search

  query = search [index: "my_index"] do
    query do
      match "name", "jane"
    end
  end
  # [search: [query: [match: [name: [query: "jane"]]]], index: "my_index"]

  Tirexs.Query.create_resource(query)
  #  {:ok, 200,
  #   %{_shards: %{failed: 0, successful: 5, total: 5},
  #     hits: %{hits: [%{_id: "1", _index: "my_index", _score: 0.30685282,
  #          _source: %{email: "[email protected]", name: "Jane"}, _type: "users"}],
  #       max_score: 0.30685282, total: 1}, timed_out: false, took: 5}}

Check out /examples directory as a quick intro.

Gitter

tirexs is split into several layers

Find out more in api reference

Not sure?

Look around using https://hex.pm/packages?search=elasticsearch... to find out some other packages.

Contributing

If you feel like porting or fixing something, please drop a pull request or issue tracker at GitHub! Check out the [CONTRIBUTING.md](CONTRIBUTING.md) for more details.

License

Tirexs source code is released under Apache 2 License. Check [LICENSE](LICENSE) and [NOTICE](NOTICE) files for more details. The project HEAD is https://github.com/zatvobor/tirexs.

Analytics


*Note that all licence references and agreements mentioned in the tirexs README section above are relevant to that project's source code only.