Embedding signalk server in flutter?

Hello, I'm developing an android/iphone app in flutter that consumes an nmea0183 stream. I recently came across signalK and think it would be advantageous to consume the signalk stream in the app instead, however, I don't want to force users to setup signalk. Is it possible for me to bundle signalK with my app or does it have to be setup by the user?
7 Replies
Tony
Tony5mo ago
Flutter is a client library/framework. Signalk is a server side application. You cannot bundle a server into flutter
Teppo Kurki
Teppo Kurki5mo ago
Don’t know if you can embed/use JavaScript from Flutter, but if that is possible you could leverage the conversions from nmea0183 and nmea2000 to signalk instead of embedding the whole server That would leave out the sk plugin ecosystem, but allow using the sk data model
cufisz
cufiszOP5mo ago
Maybe taking flutter out of the picture. Could you run signalk as a standalone app on a phone? The idea being not to embed singalk within flutter itself, but to have it run alongside the app. @Teppo Kurki : Am I understanding your suggestion? (1) TCP/UDP in flutter (2) forward nmea0183/nmea200 stream to JS (3) JS parses nmea and outputs signalK (4) rest of flutter code takes signalK as input. Is that correct?
Teppo Kurki
Teppo Kurki5mo ago
Yes The conversions would be just black boxes, bytes/lines in and json out
cufisz
cufiszOP5mo ago
My initial goal was to also get signalK's tcp/udp stack for robustness. Will investigate.
Phil
Phil5mo ago
@cufisz I'd be interested to know if you get something working. I've got a Flutter app connecting to Signalk https://github.com/philseeley/boatinstrument
cufisz
cufiszOP5mo ago
Hi Phil, I am not pursueing this further at the given moment as I focus on other aspects of the app. It seems I keep having trouble with the UDP connection though so I will update here if I give it a go.

Did you find this page helpful?