Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/radar/elastic
A thin veneer over HTTPotion that talks to Elastic Search
https://github.com/radar/elastic
Last synced: 1 day ago
JSON representation
A thin veneer over HTTPotion that talks to Elastic Search
- Host: GitHub
- URL: https://github.com/radar/elastic
- Owner: radar
- License: mit
- Created: 2016-10-19T06:01:45.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2021-05-21T22:15:43.000Z (over 3 years ago)
- Last Synced: 2025-01-03T09:10:08.254Z (8 days ago)
- Language: Elixir
- Homepage: https://hex.pm/packages/elastic
- Size: 3.84 MB
- Stars: 65
- Watchers: 9
- Forks: 22
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
- freaking_awesome_elixir - Elixir - A thin-veneer over HTTPotion to help you talk to Elastic Search. (ORM and Datamapping)
- fucking-awesome-elixir - elastic - A thin-veneer over HTTPotion to help you talk to Elastic Search. (ORM and Datamapping)
- awesome-elixir - elastic - A thin-veneer over HTTPotion to help you talk to Elastic Search. (ORM and Datamapping)
README
# Elastic
[![Version](https://img.shields.io/hexpm/v/elastic.svg)](https://hex.pm/packages/elastic)
![GitHub Action Status](https://github.com/radar/elastic/workflows/Elixir%20CI/badge.svg)_You Know, for (Elastic) Search._
Want to talk to Elastic Search in Elixir, but don't want to use raw HTTP calls? This package is for you.
## Installation
1. Add it as a dependency in `mix.exs`:
```elixir
defp deps do
[
{:elastic, "~> 3.0"}
]
```2. Run `mix deps.get`
3. Add it to the applications list in `mix.exs`:
```elixir
def application do
[extra_applications: [:elastic]]
end
```## Docs
Documentation can be found on [hexdocs.pm](https://hexdocs.pm/elastic/Elastic.html)
## There's a bug / I have a feature request
If you've found a bug, please [create a new issue](https://github.com/radar/elastic/issues/new) or [submit a pull request](https://github.com/radar/elastic/compare) to fix that bug.
If you've got a feature request, then please submit a pull request which adds the functionality you want.
## ElasticSearch version
This package is designed to work with and routinely tested against the following ElasticSearch versions:
- 2.4.x
- 5.x
- 6.xIf you find any incompatibility issues, please file a GitHub issue about it here, or even better open a pull request to fix it. Thanks!
## Elastic / Elastix / Tirexs
There's a similar package called [Elastix](https://github.com/werbitzky/elastix), which provides similar functionality. I only found out about this package _after_ I wrote Elastic and was using it in production; after first trialling [tirexs](https://github.com/Zatvobor/tirexs) -- and not finding its code very easy to understand.
It looks like the creator of Elastix and I have similar design ideals, so it really does come down to personal choice when deciding which library to use. I think Elastic has [better documentation](https://hexdocs.pm/elastic/). Elastix has a Mapping API, but Elastic has a Scrolling API.
Choose your own adventure ;)