Coder Social home page Coder Social logo

Clients about jetstream HOT 9 CLOSED

nats-io avatar nats-io commented on June 1, 2024
Clients

from jetstream.

Comments (9)

ripienaar avatar ripienaar commented on June 1, 2024

There might be others but I saw https://github.com/c16a/nats-dart, JetStream doesnt need any special clients so you could use an existing core nats one like that.

There might be others, @ColinSullivan1 might know?

from jetstream.

winwisely99 avatar winwisely99 commented on June 1, 2024

thanks @ripienaar

thanks for the link to that dart code. As far as i can see its very incomplete. This is always going to be the issue for Clients for NATS / JetStream too.

The other option i have is to embed the golang client inside Flutter.
Then we are not reliant on Dart client for NATS.

Good example on the cocept is here: https://github.com/deromask/deromask

  • this works fully on Desktop and Mobile by using gomobile and embedding this.
  • Protobufs are used between gomobile and Flutter layers.

Would appreciate and thoughts on this also...

from jetstream.

ripienaar avatar ripienaar commented on June 1, 2024

If you can embed go stuff in flutter then that sounds like a winner :)

from jetstream.

winwisely99 avatar winwisely99 commented on June 1, 2024

Cheers. Will give it a go and let you know how we get on.

Thanks for your advice

from jetstream.

ripienaar avatar ripienaar commented on June 1, 2024

Closing this one, feel free to open another issue if you have more questions :)

from jetstream.

winwisely99 avatar winwisely99 commented on June 1, 2024

@ripienaar

https://github.com/c16a/nats-dart is very old and incomplete

https://github.com/chartchuo/dart-nats looks to be getting close to feature complete.

We might help. Nit sure yet though as we are reviewing options.

from jetstream.

ColinSullivan1 avatar ColinSullivan1 commented on June 1, 2024

Help would be greatly appreciated, and we'd welcome another contribution in this area. I'm not aware of any other dart client beyond the ones mentioned above.

from jetstream.

winwisely99 avatar winwisely99 commented on June 1, 2024

@ColinSullivan1

We have isolated 3 approaches:

  1. Get on board and help the dart NATS client
  2. Embed the NATS go client via go-mobile
    3 wrap the NATS server with GRPC

Option 3 looks like the most interoperable.
We need an untyped interoperability solution because our funders and users are orgs using a variety of languages. By wrapping NATS server side it will allow their microserices to easily talk to the gateway as well as the flutter client to talk to the gateway.

I wonder if Jetstream will be moving to a grpc based API ?

from jetstream.

ColinSullivan1 avatar ColinSullivan1 commented on June 1, 2024

I'd think choices 1 or 2 would be ideal.

gRPC does have a lot of language bindings, but you lose location transparency, failover functionality, and NATS does have true multi-tenancy that can help you manage the orgs connecting to you. NATS does a multitude of client types... https://nats.io/download/#nats

JetStream won't have a gRPC interface; it'll use core NATS.

from jetstream.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.