1
0

index.asciidoc 7.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270
  1. = Community Contributed Clients
  2. [preface]
  3. == Preface
  4. :client: https://www.elastic.co/guide/en/elasticsearch/client
  5. [NOTE]
  6. ====
  7. This is a list of clients submitted by members of the Elastic community.
  8. Elastic does not support or endorse these clients.
  9. If you'd like to add a new client to this list, please
  10. https://github.com/elastic/elasticsearch/blob/master/CONTRIBUTING.md#contributing-code-and-documentation-changes[open a pull request].
  11. ====
  12. Besides the link:/guide[officially supported Elasticsearch clients], there are
  13. a number of clients that have been contributed by the community for various languages:
  14. * <<b4j>>
  15. * <<cpp>>
  16. * <<clojure>>
  17. * <<coldfusion>>
  18. * <<erlang>>
  19. * <<go>>
  20. * <<haskell>>
  21. * <<java>>
  22. * <<javascript>>
  23. * <<julia>>
  24. * <<kotlin>>
  25. * <<lua>>
  26. * <<dotnet>>
  27. * <<perl>>
  28. * <<php>>
  29. * <<python>>
  30. * <<r>>
  31. * <<ruby>>
  32. * <<rust>>
  33. * <<scala>>
  34. * <<smalltalk>>
  35. * <<swift>>
  36. * <<vertx>>
  37. [[b4j]]
  38. == B4J
  39. * https://www.b4x.com/android/forum/threads/server-jelasticsearch-search-and-text-analytics.73335/[jElasticsearch]:
  40. B4J client based on the official Java REST client. **- Last release more than a year ago**
  41. [[cpp]]
  42. == C++
  43. * https://github.com/seznam/elasticlient[elasticlient]: simple library for
  44. simplified work with Elasticsearch in C++. **- Last commit more than a year ago**
  45. [[clojure]]
  46. == Clojure
  47. * https://github.com/mpenet/spandex[Spandex]:
  48. Clojure client, based on the new official low-level REST client.
  49. * https://github.com/clojurewerkz/elastisch[Elastisch]:
  50. Clojure client. **- Last commit more than a year ago**
  51. [[coldfusion]]
  52. == ColdFusion (CFML)
  53. * https://www.forgebox.io/view/cbelasticsearch[cbElasticSearch]:
  54. Native ColdFusion (CFML) support for the ColdBox MVC Platform which provides
  55. you with a fluent search interface for Elasticsearch, in addition to a
  56. CacheBox Cache provider and a Logbox Appender for logging.
  57. [[erlang]]
  58. == Erlang
  59. * https://github.com/tsloughter/erlastic_search[erlastic_search]:
  60. Erlang client using HTTP. **- Last commit more than a year ago**
  61. * https://github.com/datahogs/tirexs[Tirexs]:
  62. An https://github.com/elixir-lang/elixir[Elixir] based API/DSL, inspired by
  63. https://github.com/karmi/tire[Tire]. Ready to use in pure Erlang
  64. environment. **- Last commit more than a year ago**
  65. * https://github.com/sashman/elasticsearch_elixir_bulk_processor[Elixir Bulk
  66. Processor]: Dynamically configurable Elixir port of the
  67. {client}/java-api/current/java-docs-bulk-processor.html[Bulk Processor].
  68. Implemented using GenStages to handle back pressure. **- Last commit more than a year ago**
  69. [[go]]
  70. == Go
  71. Also see the {client}/go-api/current/index.html[official Elasticsearch Go
  72. client].
  73. * https://github.com/mattbaird/elastigo[elastigo]:
  74. Go client. **- Last commit more than a year ago**
  75. * https://github.com/olivere/elastic[elastic]:
  76. Elasticsearch client for Google Go. **- Last commit more than a year ago**
  77. * https://github.com/softctrl/elk[elk]:
  78. Golang lib for Elasticsearch client. **- Last commit more than a year ago**
  79. [[haskell]]
  80. == Haskell
  81. * https://github.com/bitemyapp/bloodhound[bloodhound]:
  82. Haskell client and DSL.
  83. [[java]]
  84. == Java
  85. Also see the {client}/java-api/current/index.html[official Elasticsearch Java
  86. client].
  87. * https://github.com/otto-de/flummi[Flummi]:
  88. Java Rest client with comprehensive Query DSL API.
  89. * https://github.com/searchbox-io/Jest[Jest]:
  90. Java Rest client. ** - No longer maintained**
  91. [[javascript]]
  92. == JavaScript
  93. See the {client}/javascript-api/current/index.html[official Elasticsearch
  94. JavaScript client].
  95. [[julia]]
  96. == Julia
  97. * https://github.com/OpenSesame/ElasticsearchClient.jl[ElasticsearchClient.jl]:
  98. Elasticsearch client inspired by the {client}/ruby-api/current/index.html[official Elasticsearch Ruby client].
  99. [[kotlin]]
  100. == Kotlin
  101. * https://github.com/mbuhot/eskotlin[ES Kotlin]:
  102. Elasticsearch Query DSL for kotlin based on the
  103. {client}/java-api/current/index.html[official Elasticsearch Java client]. **- Last commit more than a year ago**
  104. * https://github.com/jillesvangurp/es-kotlin-wrapper-client[ES Kotlin Wrapper
  105. Client]: Kotlin extension functions and abstractions for the
  106. {client}/java-api/current/index.html[official Elasticsearch high-level
  107. client]. Aims to reduce the amount of boilerplate needed to do searches, bulk
  108. indexing and other common things users do with the client. **- No longer maintained**
  109. [[lua]]
  110. == Lua
  111. * https://github.com/DhavalKapil/elasticsearch-lua[elasticsearch-lua]:
  112. Lua client for Elasticsearch **- Last commit more than a year ago**
  113. [[dotnet]]
  114. == .NET
  115. See the {client}/net-api/current/index.html[official Elasticsearch .NET client].
  116. [[perl]]
  117. == Perl
  118. Also see the {client}/perl-api/current/index.html[official Elasticsearch Perl
  119. client].
  120. * https://metacpan.org/pod/Elastijk[Elastijk]: A low-level, minimal HTTP client.
  121. **- Last commit more than a year ago**
  122. [[php]]
  123. == PHP
  124. Also see the {client}/php-api/current/index.html[official Elasticsearch PHP
  125. client].
  126. * https://github.com/ruflin/Elastica[Elastica]:
  127. PHP client.
  128. * https://github.com/nervetattoo/elasticsearch[elasticsearch]: PHP client.
  129. **- Last commit more than a year ago**
  130. * https://github.com/madewithlove/elasticsearcher[elasticsearcher]: Agnostic
  131. lightweight package on top of the Elasticsearch PHP client. Its main goal is to
  132. allow for easier structuring of queries and indices in your application. It does
  133. not want to hide or replace functionality of the Elasticsearch PHP client.
  134. **- Last commit more than a year ago**
  135. [[python]]
  136. == Python
  137. See the {client}/python-api/current/index.html[official Elasticsearch Python
  138. client].
  139. [[r]]
  140. == R
  141. * https://github.com/ropensci/elastic[elastic]:
  142. A low-level R client for Elasticsearch.
  143. * https://github.com/ropensci/elasticdsl[elasticdsl]:
  144. A high-level R DSL for Elasticsearch, wrapping the elastic R client.
  145. **- No longer maintained**
  146. * https://github.com/uptake/uptasticsearch[uptasticsearch]:
  147. An R client tailored to data science workflows.
  148. **- Last commit more than a year ago**
  149. [[ruby]]
  150. == Ruby
  151. Also see the {client}/ruby-api/current/index.html[official Elasticsearch Ruby client].
  152. * https://github.com/printercu/elastics-rb[elastics]:
  153. Tiny client with built-in zero-downtime migrations and ActiveRecord integration.
  154. **- Last commit more than a year ago**
  155. * https://github.com/toptal/chewy[chewy]:
  156. An ODM and wrapper for the official Elasticsearch client.
  157. * https://github.com/ankane/searchkick[Searchkick]:
  158. Intelligent search made easy.
  159. * https://github.com/artsy/estella[Estella]:
  160. Make your Ruby models searchable.
  161. [[rust]]
  162. == Rust
  163. Also see the {client}/rust-api/current/index.html[official Elasticsearch Rust
  164. client].
  165. * https://github.com/benashford/rs-es[rs-es]:
  166. A REST API client with a strongly-typed Query DSL.
  167. **- Last commit more than a year ago**
  168. * https://github.com/elastic-rs/elastic[elastic]:
  169. A modular REST API client that supports freeform queries.
  170. **- Last commit more than a year ago**
  171. [[scala]]
  172. == Scala
  173. * https://github.com/sksamuel/elastic4s[elastic4s]:
  174. Scala DSL.
  175. * https://github.com/gphat/wabisabi[wabisabi]:
  176. Asynchronous REST API Scala client. **- No longer maintained**
  177. * https://github.com/workday/escalar[escalar]:
  178. Type-safe Scala wrapper for the REST API.
  179. **- Last commit more than a year ago**
  180. * https://github.com/SumoLogic/elasticsearch-client[elasticsearch-client]:
  181. Scala DSL that uses the REST API. Akka and AWS helpers included.
  182. **- No longer maintained**
  183. [[smalltalk]]
  184. == Smalltalk
  185. * https://github.com/newapplesho/elasticsearch-smalltalk[elasticsearch-smalltalk]:
  186. Pharo Smalltalk client for Elasticsearch.
  187. **- Last commit more than a year ago**
  188. [[swift]]
  189. == Swift
  190. * https://github.com/brokenhandsio/elasticsearch-nio-client[Elasticsearch NIO Client]: a library for
  191. working with Elasticsearch in Swift, built on top of SwiftNIO and Swift Package Manager.
  192. [[vertx]]
  193. == Vert.x
  194. * https://github.com/reactiverse/elasticsearch-client[elasticsearch-client]:
  195. An Elasticsearch client for Eclipse Vert.x
  196. **- Last commit more than a year ago**