From 09e06c9fe125fbd1e2a54d7233b2dc931ff5e6af Mon Sep 17 00:00:00 2001 From: panaaj <38519157+panaaj@users.noreply.github.com> Date: Fri, 9 Feb 2024 17:01:12 +1030 Subject: [PATCH] chore: docs --- CHANGELOG.md | 20 +++++----- README.md | 106 +++++++++++++++++---------------------------------- 2 files changed, 47 insertions(+), 79 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index af46ab46..9e13753e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,16 +2,18 @@ ### v2.5.0 -- **Added**: Toggle the display chart bounds on the map. -- **Added**: Support for Mapbox styles. +- **Added**: In the chart list, toggle the display of the bounds of all available charts on the map. +- **Added**: Displaying vector charts with defined styles in a Mapbox style JSON file. - **Updated**: New Map icons for waypoints and AIS targets. -- **Added**: Display weather data from paths within the `meteo` context - - Weather graduated from experiment to mainstream feature. - - Display meto stations on the map. - - Clicking on meto station icon displays available observation data. - - Weather data from station closest to vessel position is available via the _meteo.freeboard-sk_ path (See [nmea0183-signalk PR #245](https://github.com/SignalK/nmea0183-signalk)). -- **Experiment (Route)**: - - Render start / Finish line when present in route properties and route is active. + +**Weather** moves from `experiment` -> feature with the introduction of the `meteo` context as per [nmea0183-signalk PR #245 - VDM Msg 8](https://github.com/SignalK/nmea0183-signalk). + +- **Added**: Display weather stations on the map and view observation data. +- **Added**: Weather data relative to vessel position, sourced from _OpenWeather_, including hourly forecasts is available via the `meteo.freeboard-sk` context. +- **Removed**: Option to use NOAA as weather source. + +**Experiments**: +- **Routes**: Render start / Finish line for the active route when values are present in route meta data. ### v2.4.0 diff --git a/README.md b/README.md index 904078e7..d5cb98b2 100644 --- a/README.md +++ b/README.md @@ -1,11 +1,18 @@ # Freeboard-SK -Freeboard-SK is a stateless, multi-station, Openlayers based chart plotter for Signal K for displaying and managing routes, waypoints, notes, alarms, notifications and more from any web enabled device. +Freeboard-SK is a stateless, multi-station, Openlayers based chart plotter for Signal K. +Use it to display: +- Resources _(i.e. routes, waypoints, notes, charts, etc)_ +- Alarms & notifications +- AIS information +- Weather information +- Signal K instrument WebApps. + +and more from any web enabled device. ![screen](https://user-images.githubusercontent.com/38519157/128667564-0f5e1ed6-eaae-40c7-ad62-5e7011c1f082.png) ## Features: ---- ### Vessel / Chart Display: @@ -72,48 +79,19 @@ Whilst not specifically defined in the Signal K specification, Freeboard-SK supp Freeboard-SK can display alarms _(visual and audio)_ & messages contained in *Notification* messages transmitted by the Signal K server. -Alarm types supported include: +Additionally you can set alarms, including _anchor watch_, as well as raise alarms such as _man overboard_, _sinking_, etc directly from the user interface. + +Supported alarm types include: - Depth - Closest Approach -- Anchor drag +- Anchor drag / watch - "Buddy" notifications -- All standard Signal K Alarms (i.e. `Man overboard`, `Sinking`, etc.) - -Additionally you can raise `anchor watch` and a number of the standard alarms such as `Man overboard`, `Sinking`, etc directly from the user interface. - -Freeboard-SK also implements the following API endpoint to accept requests for raising and clearing notifications for Signal K Standard Alarms: -``` -/signalk/v2/api/notifications/ -``` +- All Signal K specification defined alarms. -_Example: Raise Man overboard alarm (default message):_ -``` -HTTP PUT 'http://host:port/signalk.v2/api/notifications/mob' -``` -_Example: Raise Man overboard alarm (custom message):_ -``` -HTTP PUT 'http://host:port/signalk.v2/api/notifications/mob' { - "message": "Man Overboard!" -} -``` - -_Example: Clear Man overboard alarm:_ -``` -HTTP DELETE 'http://host:port/signalk.v2/api/notifications/mob' -``` - -_**Signal K Standard Alarms:**_ -- mob -- fire -- sinking -- adrift -- piracy -- abandon - -_Vessel Closest Approach alarm:_ -![screen](https://user-images.githubusercontent.com/38519157/128667564-0f5e1ed6-eaae-40c7-ad62-5e7011c1f082.png) +Freeboard-SK also implements API endpoints to accept requests for raising and clearing Signal K specification defined alarms. +_See OpenAPI documentation in Signal K Server Admin UI for details._ --- @@ -126,13 +104,13 @@ Freeboard-SK supports the Siganl K `playback` api and can replay recorded time-s ### Instruments: -Freeboard-SK allows you to use your favourite instrumentation app installed on the Signal K server. +Freeboard-SK allows you to use your favourite instrumentation apps installed on the Signal K server. -Select one or more from the installed applications listed in the `settings` screen and they will displayed in the instrument panel drawer. +Select one or more installed applications listed in the `settings` screen and they will displayed in the instrument drawer. -When more than one app is selected you can cycle through them within the instrument panel. +When more than one app is selected you can cycle through them within the instrument drawer. -_Note: The `Instrument Panel` app is the default application if no user selection has been made._ +_Note: The `Signal K Instrument Panel` app will be displayed if no user selection has been made._ ![instruments](https://user-images.githubusercontent.com/38519157/128668406-02cbb8d8-2353-4e93-ae5e-12e0c7d507fe.png) @@ -140,17 +118,18 @@ _Note: The `Instrument Panel` app is the default application if no user selectio ### Experiments: -To get access to experimental Freeboard-SK features ensure you check the **Experimental Features** option in **Settings**. +Features that are not ready for "prime time" are made available as experiments. -Checking this option will make these features appear in the user interface. +To make experimental features available from within the Freeboard-SK user interface, you need to ensure the **Experimental Features** option is checked in **Settings**. + +_Note: Some experiments will require configuration of Freeboard-SK via the _Plugin Config_ screen of the Signal K Server Admin UI._ --- ## System Requirements: -Freeboard-SK requires **Signal K API Version 2** as it makes use of both the v2 `Resources` and `Course` APIs. +**Freeboard-SK requires _Signal K Server Version 2.0 or above**. -_If installed on Signal K v1.x.x Freeboard features may not be fully functional!_ The following features require that the Signal K server have plugins / providers installed to service the following paths: @@ -172,6 +151,7 @@ The following features require that the Signal K server have plugins / providers The following plugins are recommended for the *Signal K node server* to enable full functionality: - @signalk/charts-plugin *(Charts provider)* +- signalk-pmtiles-plugin *(ProtoMaps chart provider)* - signalk-anchoralarm-plugin _(anchor alarm settings & notifications)_ - signalk-simple-notifications _(depth alarm notifications)_ - @signalk/course-provider _(course calculations e.g. XTE, DTG, etc.)_ @@ -205,43 +185,29 @@ DEV_SERVER { _Note: These settings apply in **Development Mode** only!_ -``` -npm start -ng serve -ng build -``` - - _They will __NOT__ apply when using **Production Mode**, the generated application will attempt to connect to a Signal K api / stream on the hosting server._ -``` -ng build -c production -or -npm run build:web -``` - --- ### Building a Release: __Building the Application:__ -To build all components of the application ready for release use the `npm run build:all` command. - -__Building individual components:__ +To build all components of the application _(plugin and webapp)_ ready for release use the `npm run build:prod` command. -- To build only the _web application_ use the `npm run build:web` command. -- To build only the _helper plugin_ use the `npm run build:helper` command. +__Building components individually:__ +- To build only the _webapp_ use the command `npm run build:web`. +- To build only the _helper plugin_ use the command `npm run build:helper`. -Built files for deployment are placed in the following folders: -- `/public` (web application) -- `/plugin` (helper plugin) +Built files _(for deployment)_ are placed in the following folders: +- `/public` _(Freeboard-SK web app)_ +- `/plugin` _(Freeboard-SK plugin)_ -__Building NPM package:__ +__Building the NPM package:__ -To build the NPM package use `npm pack` command which will: -1. Execute `npm run build:all` +To build the NPM package use the `npm pack` command to: +1. Execute `npm run build:prod` 1. Create the NPM package (`.tgz`) file in the root folder of the project. ---