Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Community Question: Language-specific Client Support #55

Open
austince opened this issue Jan 18, 2021 · 2 comments
Open

Community Question: Language-specific Client Support #55

austince opened this issue Jan 18, 2021 · 2 comments

Comments

@austince
Copy link
Contributor

There has already been some discussion about talking with a Zentity-enabled cluster in Python, but I'm wondering what other languages people would like to see clients built for? We're currently using Node.js and can contribute our extension to the official client if others would find it useful.

@davemoore-
Copy link
Member

+ I'm interested in people's thoughts here, too.

Personally (though my opinion matters the least here) I've considered zentity to have too simple of an API to warrant the effort of client libraries, each of which would need to be kept in sync with the latest versions of zentity and Elasticsearch. I envisioned using HTTP libraries directly. But I'm happy to have my assumptions on simplicity challenged -- and to hear what people would expect or want to see in a client library.

@austince
Copy link
Contributor Author

I think it's true about the simplicity of the API and HTTP libs are a low barrier-to-entry for getting started with Zentity. The benefit we've seen of a more integrated client is two-fold: Zentity types and Elasticsearch-client support.

Having a client that brings the type information of Zentity things like models, resolution parameters, and request/ response formats as code makes a huge difference when adding new features or passing projects off within teams.

Tighter integration with Elasticsearch clients might be even more important, though, as it brings support for things like connection pooling and standard authentication. If using just an HTTP lib, all of that would have to be re-implemented somewhere (either in the HTTP lib or in the user's code). It's also worth noting that people will likely be using an ES client already in the application if it deals with indexing the data Zentity is resolving against.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants