A Signal K webapp is an HTML5 application that runs on a web browser and is typically loaded from a Signal K server, using its HTTP interface.
There are several prototype level browser based webapps that are installed during the server installation such as:
- Instrumentpanel - Show your boat's live data with customizable gauges you can hide or move around.
- freeboard-sk - Chart plotting webpage
- sailgauge - html page to show sailing-related data on one screen.
Other apps are published on npm, and appear in the App Store (http://localhost:3000/appstore)
The simplest form of a Signal K client is a process or web page that receives and displays the data in some way. The server contains a very simple web page that connects to the server with a WebSocket connection and updates the display as new json messages are received from the server. If you have installed the server and started it with one of the file-based startup scripts in the bin/ directory you can access it at http://localhost:3000/examples/consumer-example.html. The html code of the web page is in the examples directory.
If you want to integrate your webapp in the main structure of http://localhost:3000/apps, you should make it installable via npm and add the keyword signalk-webapp
to your package.json file.
Have an idea for a great way to visualise Signal K data? Something bugging you about the sample consumers? Read the documentation, share your input, write some code, join the mailing list and our Slack chat!