OpenSearch/docs/community-clients/index.asciidoc

246 lines
6.0 KiB
Plaintext

= Community Contributed Clients
:client: https://www.elastic.co/guide/en/elasticsearch/client
Besides the link:/guide[officially supported Elasticsearch clients], there are
a number of clients that have been contributed by the community for various languages:
* <<clojure>>
* <<cold-fusion>>
* <<erlang>>
* <<go>>
* <<groovy>>
* <<haskell>>
* <<java>>
* <<javascript>>
* <<kotlin>>
* <<dotnet>>
* <<ocaml>>
* <<perl>>
* <<php>>
* <<python>>
* <<r>>
* <<ruby>>
* <<scala>>
* <<smalltalk>>
* <<vertx>>
[[clojure]]
== Clojure
* http://github.com/clojurewerkz/elastisch[Elastisch]:
Clojure client.
[[cold-fusion]]
== Cold Fusion
The following project appears to be abandoned:
* https://github.com/jasonfill/ColdFusion-ElasticSearch-Client[ColdFusion-Elasticsearch-Client]
Cold Fusion client for Elasticsearch
[[erlang]]
== Erlang
* http://github.com/tsloughter/erlastic_search[erlastic_search]:
Erlang client using HTTP.
* https://github.com/dieswaytoofast/erlasticsearch[erlasticsearch]:
Erlang client using Thrift.
* https://github.com/datahogs/tirexs[Tirexs]:
An https://github.com/elixir-lang/elixir[Elixir] based API/DSL, inspired by
http://github.com/karmi/tire[Tire]. Ready to use in pure Erlang
environment.
[[go]]
== Go
* https://github.com/mattbaird/elastigo[elastigo]:
Go client.
* https://github.com/belogik/goes[goes]:
Go lib.
* https://github.com/olivere/elastic[elastic]:
Elasticsearch client for Google Go.
[[groovy]]
== Groovy
See the {client}/groovy-api/current/index.html[official Elasticsearch Groovy client].
[[haskell]]
== Haskell
* https://github.com/bitemyapp/bloodhound[bloodhound]:
Haskell client and DSL.
[[java]]
== Java
Also see the {client}/java-api/current/index.html[official Elasticsearch Java client].
* [Flummi](https://github.com/otto-de/flummi):
Java Rest client with comprehensive query DSL API
* https://github.com/searchbox-io/Jest[Jest]:
Java Rest client.
[[javascript]]
== JavaScript
Also see the {client}/javascript-api/current/index.html[official Elasticsearch JavaScript client].
* https://github.com/fullscale/elastic.js[Elastic.js]:
A JavaScript implementation of the Elasticsearch Query DSL and Core API.
* https://github.com/printercu/elastics[elastics]: Simple tiny client that just works
* https://github.com/roundscope/ember-data-elasticsearch-kit[ember-data-elasticsearch-kit]:
An ember-data kit for both pushing and querying objects to Elasticsearch cluster
The following project appears to be abandoned:
* https://github.com/ramv/node-elastical[node-elastical]:
Node.js client for the Elasticsearch REST API
[[kotlin]]
== kotlin
* https://github.com/mbuhot/eskotlin[ES Kotlin]:
Elasticsearch Query DSL for kotlin based on the {client}/java-api/current/index.html[official Elasticsearch Java client].
[[dotnet]]
== .NET
Also see the {client}/net-api/current/index.html[official Elasticsearch .NET client].
* https://github.com/Yegoroff/PlainElastic.Net[PlainElastic.Net]:
.NET client.
[[ocaml]]
== OCaml
The following project appears to be abandoned:
* https://github.com/tovbinm/ocaml-elasticsearch[ocaml-elasticsearch]:
OCaml client for Elasticsearch
[[perl]]
== Perl
Also see the {client}/perl-api/current/index.html[official Elasticsearch Perl client].
* https://metacpan.org/pod/Elastijk[Elastijk]: A low level minimal HTTP client.
[[php]]
== PHP
Also see the {client}/php-api/current/index.html[official Elasticsearch PHP client].
* http://github.com/ruflin/Elastica[Elastica]:
PHP client.
* http://github.com/nervetattoo/elasticsearch[elasticsearch] PHP client.
[[python]]
== Python
Also see the {client}/python-api/current/index.html[official Elasticsearch Python client].
* http://github.com/rhec/pyelasticsearch[pyelasticsearch]:
Python client.
* https://github.com/eriky/ESClient[ESClient]:
A lightweight and easy to use Python client for Elasticsearch.
* https://github.com/mozilla/elasticutils/[elasticutils]:
A friendly chainable Elasticsearch interface for Python.
* http://github.com/aparo/pyes[pyes]:
Python client.
The following projects appear to be abandoned:
* https://github.com/humangeo/rawes[rawes]:
Python low level client.
* http://intridea.github.io/surfiki-refine-elasticsearch/[Surfiki Refine]:
Python Map-Reduce engine targeting Elasticsearch indices.
[[r]]
== R
* https://github.com/Tomesch/elasticsearch[elasticsearch]
R client for Elasticsearch
* https://github.com/ropensci/elastic[elastic]:
A low-level R client for Elasticsearch.
* https://github.com/ropensci/elasticdsl[elasticdsl]:
A high-level R DSL for Elasticsearch, wrapping the elastic R client.
[[ruby]]
== Ruby
Also see the {client}/ruby-api/current/index.html[official Elasticsearch Ruby client].
* https://github.com/PoseBiz/stretcher[stretcher]:
Ruby client.
* https://github.com/printercu/elastics-rb[elastics]:
Tiny client with built-in zero-downtime migrations and ActiveRecord integration.
* https://github.com/toptal/chewy[chewy]:
Chewy is ODM and wrapper for official elasticsearch client
* https://github.com/ankane/searchkick[Searchkick]:
Intelligent search made easy
The following projects appear to be abandoned:
* https://github.com/wireframe/elastic_searchable/[elastic_searchable]:
Ruby client + Rails integration.
* https://github.com/ddnexus/flex[Flex]:
Ruby Client.
[[scala]]
== Scala
* https://github.com/sksamuel/elastic4s[elastic4s]:
Scala DSL.
* https://github.com/scalastuff/esclient[esclient]:
Thin Scala client.
* https://github.com/gphat/wabisabi[wabisabi]:
Asynchronous REST API Scala client.
* https://github.com/SumoLogic/elasticsearch-client[elasticsearch-client]:
Scala DSL that uses the REST API. Akka and AWS helpers included.
The following project appears to be abandoned:
* https://github.com/bsadeh/scalastic[scalastic]:
Scala client.
[[smalltalk]]
== Smalltalk
* http://ss3.gemstone.com/ss/Elasticsearch.html[Elasticsearch] -
Smalltalk client for Elasticsearch
[[vertx]]
== Vert.x
* https://github.com/goodow/realtime-search[realtime-search]:
Elasticsearch module for Vert.x