Git Product home page Git Product logo

Comments (16)

OscarAgreda avatar OscarAgreda commented on May 14, 2024

Currently, we achieve the above using the Microsoft Stack on the backed and of course Angular 1.5 (could be lower) on the front end.

By using AngularJs $emit in conjunction with the SignalR jQuery plugin proxy.invoke on the front end to send messages to the SignalR server Hub, do some server stuff here if we need to, then the server broadcasts back to the specified clients on the front end (could be a group, one particular user, to others or to all). the signalR jquery plugin is listening to the server, captures the message sent by the server with proxy.on at that time yields at the angular $emit method, which talks to the angular $on listening somewhere in the angular app. Pretty simple workflow yet powerful.

So i was wondering if your awesome seed that already uses Electron for 3 desktops and NativeScript for mobiles; could make use of Socket.IO to rule the world on all devices from one code base.

from angular-seed-advanced.

NathanWalker avatar NathanWalker commented on May 14, 2024

Hi @OscarAgreda I'd be open to this. Would you want to try a PR?

from angular-seed-advanced.

khuongduybui avatar khuongduybui commented on May 14, 2024

Have you all considered PubNub?
https://www.pubnub.com/docs/web-javascript/pubnub-javascript-sdk

from angular-seed-advanced.

mrgoos avatar mrgoos commented on May 14, 2024

You should consider primus instead. This way, everybody will use their favorite websocket technology.

from angular-seed-advanced.

khuongduybui avatar khuongduybui commented on May 14, 2024

@mrgoos primus is not a bad choice as a client-side library, though it requires us developers to host our own websocket server. In the case of PubNub, they host the server (with cdn) for us.

from angular-seed-advanced.

mrgoos avatar mrgoos commented on May 14, 2024

@khuongduybui - you can host it wherever you like without being forced to use a freemium service.

from angular-seed-advanced.

khuongduybui avatar khuongduybui commented on May 14, 2024

@mrgoos uhm, you're right, I can write a PubNub engine for primus if I need to. That's more convenient.

from angular-seed-advanced.

mrgoos avatar mrgoos commented on May 14, 2024

No need to write anything related to PubNub. Just to use primus on the server side.
It's free and works great with ANY websockets technology.

from angular-seed-advanced.

NathanWalker avatar NathanWalker commented on May 14, 2024

PubNub would be interesting. PR's are definitely welcome!

from angular-seed-advanced.

joshwiens avatar joshwiens commented on May 14, 2024

@NathanWalker - Things like this start getting into the realm of opinion. Would it not be a better approach to not "muddy the waters" and just go the route of the base seed which runs extended forks & docs?

IMO You have crossed from "example of extending the seed" to a repo that people are forking to extend.

Implementing technologies that have numerous options ends up limiting peoples options or making them gut a bunch of stuff thus complicating pulling from upstream. So while the same could be said for NativeScript, it's more like the "Angular" of hybrid mobile.

You quickly end up with something like ...
Let's add socket.io! But what about deepstream.io but I want PubNub .... the list goes on.

Just my $0.02

from angular-seed-advanced.

mrgoos avatar mrgoos commented on May 14, 2024

^^Exactly my thoughts.
This is why I suggested primus so user could use whatever websocket technology that he/she wishes like socket.io, engine.io etc.

from angular-seed-advanced.

NathanWalker avatar NathanWalker commented on May 14, 2024

I agree with @d3viant0ne here. It's definitely leaning towards a heavy opinion based implementation. May be best to do something like this on a branch perhaps? If anyone wanted to submit a PR, I'd be happy to place on a branch and mention it.

from angular-seed-advanced.

joshwiens avatar joshwiens commented on May 14, 2024

@NathanWalker - I was trying to get Minko to go that route. Pick a few "supported extensions" and then run them as branches thus simplifying the validation process for things landing in #master.

Just rebase them up and the CI takes care of the rest.

from angular-seed-advanced.

OscarAgreda avatar OscarAgreda commented on May 14, 2024

Agree 100%.
While for me asp.net core 1.0 is where the sun shines right now, and where i will push entity framework core with LinQ under the webapi controllers. For other people mongo and mongoose make more sense .
So i guess for me the route is signalR 3 (next from Microsoft ).
nevertheless all of the server stuff is nothing compared to the awesome angular2 advanced seed. because of the outstanding angular2 best Code Practices from the people that knows ..

from angular-seed-advanced.

NathanWalker avatar NathanWalker commented on May 14, 2024

I'm going to close this, thanks again for the suggestion and kind words @OscarAgreda, just to conclude if a PR were submitted with such functionality, it could be merged to a feature branch for future reference.

from angular-seed-advanced.

OscarAgreda avatar OscarAgreda commented on May 14, 2024

What about using Angular Firebase 2

literally can build a chat for no more than 200 lines of code.

I think realtime applications are part of modern apps, and the Angular Firebase 2 is an example of it.

https://github.com/angular/angularfire2

from angular-seed-advanced.

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.