@mxtommy/kip 3.11.0 → 4.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (80) hide show
  1. package/.github/copilot-instructions.md +102 -27
  2. package/.github/instructions/angular.instructions.md +1 -1
  3. package/CHANGELOG.md +33 -2
  4. package/README.md +98 -78
  5. package/docs/widget-schematic.md +102 -0
  6. package/images/ChartplotterMode.png +0 -0
  7. package/package.json +8 -3
  8. package/public/3rdpartylicenses.txt +95 -69
  9. package/public/assets/help-docs/chartplotter.md +122 -0
  10. package/public/assets/help-docs/community.md +68 -0
  11. package/public/assets/help-docs/configuration.md +1 -1
  12. package/public/assets/help-docs/contact-us.md +58 -8
  13. package/public/assets/help-docs/dashboards.md +117 -42
  14. package/public/assets/help-docs/datainspector.md +1 -1
  15. package/public/assets/help-docs/datasets.md +1 -1
  16. package/public/assets/help-docs/embedwidget.md +1 -1
  17. package/public/assets/help-docs/grafana.md +1 -1
  18. package/public/assets/help-docs/influxdb.md +1 -1
  19. package/public/assets/help-docs/kiosk.md +30 -14
  20. package/public/assets/help-docs/menu.json +5 -3
  21. package/public/assets/help-docs/putcontrols.md +5 -5
  22. package/public/assets/help-docs/welcome.md +49 -23
  23. package/public/assets/help-docs/zones.md +1 -1
  24. package/public/assets/svg/icons.svg +22 -24
  25. package/public/{chunk-F4VOQO2M.js → chunk-4HLTLR5F.js} +1 -1
  26. package/public/chunk-52M2PJJL.js +4 -0
  27. package/public/chunk-5FWE6Y4K.js +52 -0
  28. package/public/{chunk-K4BST2XF.js → chunk-75QTGQOO.js} +1 -1
  29. package/public/{chunk-XE352AKG.js → chunk-AB255PKD.js} +1 -1
  30. package/public/{chunk-GMZROOAF.js → chunk-ACTDISHE.js} +1 -1
  31. package/public/chunk-AYVYZ27A.js +2 -0
  32. package/public/chunk-B3P2F52Y.js +9 -0
  33. package/public/{chunk-EJ4JM3HG.js → chunk-BMDGKBYM.js} +23 -23
  34. package/public/chunk-CTZYGIOB.js +8 -0
  35. package/public/chunk-CVTWABMM.js +2 -0
  36. package/public/chunk-CZJ7AC6N.js +1 -0
  37. package/public/chunk-F5X5MWHG.js +0 -0
  38. package/public/{chunk-TIXQ3FAF.js → chunk-HIADZ4BV.js} +1 -1
  39. package/public/chunk-IJ22WXFB.js +1 -0
  40. package/public/chunk-IPSRX374.js +1 -0
  41. package/public/chunk-JCW5H5WP.js +1 -0
  42. package/public/{chunk-I6UWIF55.js → chunk-KHL7FGID.js} +1 -1
  43. package/public/{chunk-ANRGX57I.js → chunk-OB3QLUH6.js} +12 -12
  44. package/public/{chunk-G4B4D3XR.js → chunk-OQULS6SV.js} +1 -1
  45. package/public/chunk-P3OU5V2Y.js +1 -0
  46. package/public/chunk-RYHOAWDD.js +4 -0
  47. package/public/chunk-SVP7ZRWY.js +5 -0
  48. package/public/{chunk-IZAPOSYM.js → chunk-SZ2GUIT5.js} +1 -1
  49. package/public/chunk-TCZ5ZAXQ.js +3 -0
  50. package/public/chunk-V7PWLOQ2.js +6 -0
  51. package/public/index.html +2 -2
  52. package/public/main-3LAUI5JW.js +5 -0
  53. package/public/scripts-7HSGK5LZ.js +14 -0
  54. package/public/styles-MJ4EO4B4.css +1 -0
  55. package/tools/schematics/collection.json +9 -0
  56. package/tools/schematics/create-host2-widget/files/readme/README.md.template +109 -0
  57. package/tools/schematics/create-host2-widget/files/spec/widget-__name@dasherize__.component.spec.ts +38 -0
  58. package/tools/schematics/create-host2-widget/files/widget/widget-__name@dasherize__.component.html +6 -0
  59. package/tools/schematics/create-host2-widget/files/widget/widget-__name@dasherize__.component.scss +5 -0
  60. package/tools/schematics/create-host2-widget/files/widget/widget-__name@dasherize__.component.ts.template +94 -0
  61. package/tools/schematics/create-host2-widget/index.js +138 -0
  62. package/tools/schematics/create-host2-widget/schema.json +89 -0
  63. package/tools/schematics/create-host2-widget/test/create-host2-widget.spec.ts +70 -0
  64. package/tools/schematics/create-host2-widget/utils/formatting.js +119 -0
  65. package/public/chunk-2MAVQD65.js +0 -3
  66. package/public/chunk-5MLB3PYZ.js +0 -11
  67. package/public/chunk-66OJ5PZF.js +0 -2
  68. package/public/chunk-6NRGS3BZ.js +0 -1
  69. package/public/chunk-FPMCI7XZ.js +0 -6
  70. package/public/chunk-GIZH6HIB.js +0 -2
  71. package/public/chunk-KPOCVRYH.js +0 -2
  72. package/public/chunk-N3HCHSSE.js +0 -2
  73. package/public/chunk-P4K222SI.js +0 -8
  74. package/public/chunk-PYBIMDD3.js +0 -5
  75. package/public/chunk-S4OKR5KN.js +0 -1
  76. package/public/chunk-TARCFDF4.js +0 -4
  77. package/public/chunk-VZ77T3BF.js +0 -4
  78. package/public/chunk-XFU5YJJP.js +0 -5
  79. package/public/main-KP322K7A.js +0 -51
  80. package/public/styles-PDNHT2L2.css +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mxtommy/kip",
3
- "version": "3.11.0",
3
+ "version": "4.0.1",
4
4
  "description": "An advanced and versatile marine instrumentation package to display Signal K data.",
5
5
  "license": "MIT",
6
6
  "author": {
@@ -48,9 +48,12 @@
48
48
  "build:dev": "ng build --configuration=dev",
49
49
  "build:prod": "ng build --configuration=production",
50
50
  "build:all": "npm run build:plugin && npm run build:prod",
51
- "e2e": "ng e2e"
51
+ "e2e": "ng e2e",
52
+ "generate:widget": "npx schematics ./tools/schematics/collection.json:create-host2-widget --dry-run=false"
52
53
  },
54
+ "schematics": "tools/schematics/collection.json",
53
55
  "devDependencies": {
56
+ "@angular-devkit/schematics-cli": "^20.1.6",
54
57
  "@angular-devkit/build-angular": "^20.1.6",
55
58
  "@angular/animations": "20.1.7",
56
59
  "@angular/build": "^20.1.6",
@@ -85,7 +88,7 @@
85
88
  "core-js": "^3.13.1",
86
89
  "date-fns": "^2.30.0",
87
90
  "eslint": "^9.29.0",
88
- "gridstack": "^11.4.0",
91
+ "gridstack": "^12.3.3",
89
92
  "howler": "^2.2.4",
90
93
  "jasmine-core": "~4.0.1",
91
94
  "jasmine-spec-reporter": "~5.0.0",
@@ -99,6 +102,8 @@
99
102
  "lodash-es": "^4.17.21",
100
103
  "ng-packagr": "^20.0.1",
101
104
  "ngx-markdown": "^20.0.0",
105
+ "prismjs": "^1.30.0",
106
+ "clipboard": "^2.0.11",
102
107
  "ngx-resize-observer": "^3.1.0",
103
108
  "protractor": "~7.0.0",
104
109
  "pwa-asset-generator": "^8.1.1",
@@ -1,30 +1,4 @@
1
1
 
2
- --------------------------------------------------------------------------------
3
- Package: @godind/canvas-gauges
4
- License: "MIT"
5
-
6
- The MIT License (MIT)
7
-
8
- Copyright (c) 2016 Mykhailo Stadnyk <mikhus@gmail.com>
9
-
10
- Permission is hereby granted, free of charge, to any person obtaining a copy
11
- of this software and associated documentation files (the "Software"), to deal
12
- in the Software without restriction, including without limitation the rights
13
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
14
- copies of the Software, and to permit persons to whom the Software is
15
- furnished to do so, subject to the following conditions:
16
-
17
- The above copyright notice and this permission notice shall be included in
18
- all copies or substantial portions of the Software.
19
-
20
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
21
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
22
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
23
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
24
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
25
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
26
- SOFTWARE.
27
-
28
2
  --------------------------------------------------------------------------------
29
3
  Package: howler
30
4
  License: "MIT"
@@ -50,12 +24,12 @@ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
50
24
  OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
51
25
  WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
52
26
  --------------------------------------------------------------------------------
53
- Package: gridstack
27
+ Package: @angular/material
54
28
  License: "MIT"
55
29
 
56
- MIT License
30
+ The MIT License
57
31
 
58
- Copyright (c) 2019-2023 Alain Dumesny. v0.4.0 and older (c) 2014-2018 Pavel Reznikov, Dylan Weiss
32
+ Copyright (c) 2025 Google LLC.
59
33
 
60
34
  Permission is hereby granted, free of charge, to any person obtaining a copy
61
35
  of this software and associated documentation files (the "Software"), to deal
@@ -64,16 +38,16 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
64
38
  copies of the Software, and to permit persons to whom the Software is
65
39
  furnished to do so, subject to the following conditions:
66
40
 
67
- The above copyright notice and this permission notice shall be included in all
68
- copies or substantial portions of the Software.
41
+ The above copyright notice and this permission notice shall be included in
42
+ all copies or substantial portions of the Software.
69
43
 
70
44
  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
71
45
  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
72
46
  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
73
47
  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
74
48
  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
75
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
76
- SOFTWARE.
49
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
50
+ THE SOFTWARE.
77
51
 
78
52
  --------------------------------------------------------------------------------
79
53
  Package: @angular/animations
@@ -102,10 +76,38 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
102
76
  THE SOFTWARE.
103
77
 
104
78
  --------------------------------------------------------------------------------
105
- Package: ngx-resize-observer
79
+ Package: @angular/platform-browser
106
80
  License: "MIT"
107
81
 
108
- Copyright (c) 2017 Tyler Akins
82
+ The MIT License
83
+
84
+ Copyright (c) 2010-2025 Google LLC. https://angular.dev/license
85
+
86
+ Permission is hereby granted, free of charge, to any person obtaining a copy
87
+ of this software and associated documentation files (the "Software"), to deal
88
+ in the Software without restriction, including without limitation the rights
89
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
90
+ copies of the Software, and to permit persons to whom the Software is
91
+ furnished to do so, subject to the following conditions:
92
+
93
+ The above copyright notice and this permission notice shall be included in
94
+ all copies or substantial portions of the Software.
95
+
96
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
97
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
98
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
99
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
100
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
101
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
102
+ THE SOFTWARE.
103
+
104
+ --------------------------------------------------------------------------------
105
+ Package: gridstack
106
+ License: "MIT"
107
+
108
+ MIT License
109
+
110
+ Copyright (c) 2019-2025 Alain Dumesny. v0.4.0 and older (c) 2014-2018 Pavel Reznikov, Dylan Weiss
109
111
 
110
112
  Permission is hereby granted, free of charge, to any person obtaining a copy
111
113
  of this software and associated documentation files (the "Software"), to deal
@@ -126,7 +128,7 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
126
128
  SOFTWARE.
127
129
 
128
130
  --------------------------------------------------------------------------------
129
- Package: @angular/material
131
+ Package: @angular/cdk
130
132
  License: "MIT"
131
133
 
132
134
  The MIT License
@@ -152,26 +154,12 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
152
154
  THE SOFTWARE.
153
155
 
154
156
  --------------------------------------------------------------------------------
155
- Package: chartjs-plugin-annotation
157
+ Package: @godind/canvas-gauges
156
158
  License: "MIT"
157
159
 
158
160
  The MIT License (MIT)
159
161
 
160
- Copyright (c) 2016-2021 chartjs-plugin-annotation Contributors
161
-
162
- Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
163
-
164
- The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
165
-
166
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
167
-
168
- --------------------------------------------------------------------------------
169
- Package: @godind/ng-canvas-gauges
170
- License: "MIT"
171
-
172
- MIT License
173
-
174
- Copyright (c) 2017 Vlad Martynenko <vladimir.martynenko.work@gmail.com>
162
+ Copyright (c) 2016 Mykhailo Stadnyk <mikhus@gmail.com>
175
163
 
176
164
  Permission is hereby granted, free of charge, to any person obtaining a copy
177
165
  of this software and associated documentation files (the "Software"), to deal
@@ -180,8 +168,8 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
180
168
  copies of the Software, and to permit persons to whom the Software is
181
169
  furnished to do so, subject to the following conditions:
182
170
 
183
- The above copyright notice and this permission notice shall be included in all
184
- copies or substantial portions of the Software.
171
+ The above copyright notice and this permission notice shall be included in
172
+ all copies or substantial portions of the Software.
185
173
 
186
174
  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
187
175
  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
@@ -192,12 +180,10 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
192
180
  SOFTWARE.
193
181
 
194
182
  --------------------------------------------------------------------------------
195
- Package: @angular/platform-browser
183
+ Package: ngx-resize-observer
196
184
  License: "MIT"
197
185
 
198
- The MIT License
199
-
200
- Copyright (c) 2010-2025 Google LLC. https://angular.dev/license
186
+ Copyright (c) 2017 Tyler Akins
201
187
 
202
188
  Permission is hereby granted, free of charge, to any person obtaining a copy
203
189
  of this software and associated documentation files (the "Software"), to deal
@@ -206,24 +192,24 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
206
192
  copies of the Software, and to permit persons to whom the Software is
207
193
  furnished to do so, subject to the following conditions:
208
194
 
209
- The above copyright notice and this permission notice shall be included in
210
- all copies or substantial portions of the Software.
195
+ The above copyright notice and this permission notice shall be included in all
196
+ copies or substantial portions of the Software.
211
197
 
212
198
  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
213
199
  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
214
200
  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
215
201
  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
216
202
  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
217
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
218
- THE SOFTWARE.
203
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
204
+ SOFTWARE.
219
205
 
220
206
  --------------------------------------------------------------------------------
221
- Package: @angular/cdk
207
+ Package: @godind/ng-canvas-gauges
222
208
  License: "MIT"
223
209
 
224
- The MIT License
210
+ MIT License
225
211
 
226
- Copyright (c) 2025 Google LLC.
212
+ Copyright (c) 2017 Vlad Martynenko <vladimir.martynenko.work@gmail.com>
227
213
 
228
214
  Permission is hereby granted, free of charge, to any person obtaining a copy
229
215
  of this software and associated documentation files (the "Software"), to deal
@@ -232,16 +218,30 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
232
218
  copies of the Software, and to permit persons to whom the Software is
233
219
  furnished to do so, subject to the following conditions:
234
220
 
235
- The above copyright notice and this permission notice shall be included in
236
- all copies or substantial portions of the Software.
221
+ The above copyright notice and this permission notice shall be included in all
222
+ copies or substantial portions of the Software.
237
223
 
238
224
  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
239
225
  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
240
226
  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
241
227
  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
242
228
  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
243
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
244
- THE SOFTWARE.
229
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
230
+ SOFTWARE.
231
+
232
+ --------------------------------------------------------------------------------
233
+ Package: chartjs-plugin-annotation
234
+ License: "MIT"
235
+
236
+ The MIT License (MIT)
237
+
238
+ Copyright (c) 2016-2021 chartjs-plugin-annotation Contributors
239
+
240
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
241
+
242
+ The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
243
+
244
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
245
245
 
246
246
  --------------------------------------------------------------------------------
247
247
  Package: screenfull
@@ -934,3 +934,29 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
934
934
  THE SOFTWARE.
935
935
 
936
936
  --------------------------------------------------------------------------------
937
+ Package: prismjs
938
+ License: "MIT"
939
+
940
+ MIT LICENSE
941
+
942
+ Copyright (c) 2012 Lea Verou
943
+
944
+ Permission is hereby granted, free of charge, to any person obtaining a copy
945
+ of this software and associated documentation files (the "Software"), to deal
946
+ in the Software without restriction, including without limitation the rights
947
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
948
+ copies of the Software, and to permit persons to whom the Software is
949
+ furnished to do so, subject to the following conditions:
950
+
951
+ The above copyright notice and this permission notice shall be included in
952
+ all copies or substantial portions of the Software.
953
+
954
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
955
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
956
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
957
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
958
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
959
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
960
+ THE SOFTWARE.
961
+
962
+ --------------------------------------------------------------------------------
@@ -0,0 +1,122 @@
1
+ ## Chartplotter Mode
2
+ Chartplotter Mode provides a persistent dual‑panel navigation layout: a continuously live Freeboard‑SK chart on one side and an actively switchable KIP dashboard on the other. Switching dashboards never unloads or blinks the chart, giving you an MFD‑style experience powered entirely by Signal K.
3
+
4
+ ---
5
+
6
+ ## When to Use It
7
+ Use Chartplotter Mode when you want uninterrupted situational awareness (chart + vessel motion + routing context) while cycling between specialized dashboards (navigation, engines, energy, racing, night watch, etc.). If you only need a chart on a few dashboards or have very constrained hardware, the standalone Freeboard‑SK widget may be sufficient.
8
+
9
+ ---
10
+
11
+ ## Key Capabilities
12
+ - Persistent Freeboard‑SK chart (no reload on dashboard change)
13
+ - Landscape side‑by‑side split; automatic vertical stacking in portrait / narrow screens
14
+ - Drag resize with commit‑on‑save (Cancel reverts instantly)
15
+ - Per‑dashboard forced collapse (treat some dashboards as full‑screen data pages)
16
+ - Remote dashboard switching compatible (chart forced collapse preserved remotely)
17
+ - Optional panel side selection (left or right)
18
+
19
+ ---
20
+
21
+ ## Enabling & Basic Setup
22
+ 1. Open Actions → Settings → Display.
23
+ 2. Expand **Chartplotter Mode** and toggle “Enable Freeboard‑SK dual‑panel Chartplotter Mode.”.
24
+ 3. Choose the chart panel side (Left or Right).
25
+ 4. Optionally, enable the per‑dashboard “Auto-collapse Freeboard-SK panel when displaying this dashboard” flag if you want that dashboard to hide the chart and use the full width.
26
+ 5. Enter dashboard edit mode if you wish to resize the split (see Resizing section), then Save to persist or Cancel to discard.
27
+
28
+ Tip: Remove any existing Freeboard‑SK widget instances to avoid redundant chart rendering once mode is enabled.
29
+
30
+ ---
31
+
32
+ ## Orientation & Layout Behavior
33
+ | Environment | Layout |
34
+ |-------------|--------|
35
+ | Desktop and Phone / Wide Landscape | Horizontal split (chart + dashboard side‑by‑side) |
36
+ | Phone Portrait / Narrow | Automatic vertical stacking (top/bottom) |
37
+
38
+ The transition is automatic; no manual toggle is required. The per‑dashboard collapse still applies regardless of orientation.
39
+
40
+ ---
41
+
42
+ ## Resizing the Split
43
+ 1. Enter dashboard edit mode on any dashboard (Actions → Unlock / Edit button).
44
+ 2. Drag the split divider and release.
45
+ 3. Press **Save** (check icon) to persist globally, or **Cancel** (X) to revert to the previous ratio.
46
+
47
+ Notes:
48
+ - Width changes are only committed on Save (prevents accidental layout shifts).
49
+ - Cancel always restores the original ratio before the edit session began.
50
+ - The persisted ratio applies across dashboards (unless a dashboard is collapsed).
51
+
52
+ ---
53
+
54
+ ## Per‑Dashboard Collapse
55
+ Each dashboard can force the chart panel closed to maximize data area. This is ideal for engine diagnostics, racing performance pages, or night watch minimalism. When you switch to a collapsed dashboard, the chart panel is hidden; switching back to a normal dashboard restores it instantly with its prior state and zoom.
56
+
57
+ Characteristics:
58
+ - Collapse is a per‑dashboard flag (not a remembered manual toggle).
59
+ - No chart reload occurs when re‑expanding—state (position, zoom, layers) persists.
60
+ - Remote control switches respect the same collapse logic.
61
+
62
+ ---
63
+
64
+ ## Selecting Chart Panel Side
65
+ Change side via Settings → Display → “Freeboard‑SK panel side”. This updates the split instantly. If a dashboard is collapsed, the side preference is applied the next time a non‑collapsed dashboard is shown.
66
+
67
+ ---
68
+
69
+ ## Chartplotter Mode vs Freeboard‑SK Widget
70
+ | Aspect | Chartplotter Mode | Freeboard‑SK Widget |
71
+ |--------|------------------|---------------------|
72
+ | Persistence across dashboard switches | Yes (never reloads) | Only on dashboards containing the widget |
73
+ | Resize workflow | Drag split + Save/Cancel | Standard widget resize |
74
+ | Per‑dashboard full‑screen data toggle | Via collapse flag | N/A |
75
+ | Remote dashboard switching continuity | Yes | Yes |
76
+ | Memory footprint | Higher baseline (Freeboard-SK always resident) | Lower when dashboard lack the widget |
77
+ | Best for | Continuous nav + multi‑dashboard workflow (MFD) | Occasional chart reference |
78
+
79
+ ---
80
+
81
+ ## Remote Control Integration
82
+ When another KIP instance changes your active dashboard (Remote Control feature), the chartplotter mode and collapsed dashboard page settings are respected. No special configuration is required.
83
+
84
+ ---
85
+
86
+ ## Performance & Resource Notes
87
+ - The persistent chart consumes GPU/CPU continuously; on very low‑power hardware consider disabling Chartplotter Mode for purely data dashboards.
88
+ - Use per‑dashboard collapse for pages where chart context adds no value (reduces overdraw / repaint area temporarily).
89
+ - Avoid unnecessary high‑frequency (sub‑500 ms) widget sampling if chart responsiveness matters.
90
+ - Keep embedded iframes (Embed widget) minimal when running persistent chart + heavy datasets.
91
+
92
+ ---
93
+
94
+ ## Troubleshooting
95
+ | Issue | Possible Cause | Fix |
96
+ |-------|----------------|-----|
97
+ | Chart disappears on one dashboard | Dashboard has collapse flag enabled | Edit dashboard settings and disable collapse if unintended |
98
+ | Split ratio didn’t save | Edit session canceled or not saved | Re‑enter edit mode, resize, press Save (check icon) |
99
+ | Chart briefly flashes when switching | Very first load after enabling mode | After initial load it remains persistent; subsequent switches should be flicker‑free |
100
+ | Freeboard‑SK widget shows duplicate chart | Legacy widget still on a dashboard | Remove the Freeboard‑SK widget when using Chartplotter Mode |
101
+ | Performance feels sluggish | High widget sampling or heavy embeds | Increase sample times, remove unused widgets, collapse non‑nav dashboards, investigate hardware resource consumption |
102
+
103
+ ---
104
+
105
+ ## FAQs
106
+ **Does the chart keep its zoom and layers when collapsed dashboards are shown?** Yes. The panel is hidden, not destroyed.
107
+
108
+ **Can I temporarily hide the chart without changing dashboard flags?** Use a dashboard that has the collapse flag enabled, or create a dedicated “Data Fullscreen” dashboard.
109
+
110
+ **Does resizing affect mobile portrait stacking?** The stored ratio applies when returning to landscape; stacked orientation distributes available height automatically.
111
+
112
+ **Can I still add the Freeboard‑SK widget?** You can, but it’s redundant and may waste resources. Prefer one approach.
113
+
114
+ **Will remote control commands interrupt a resize session?** If remote switching occurs mid‑edit, the Drag resize session ends when you Save or Cancel; uncommitted changes do not apply until you explicitly save.
115
+
116
+ ---
117
+
118
+ ## Related Help
119
+ - Dashboards and Layout
120
+ - Remote Control
121
+ - Digital Switching and PUT
122
+ - Managing Configurations
@@ -0,0 +1,68 @@
1
+ # Online Community Content
2
+
3
+ > Want to contribute a video or resource? Share your links by [submitting a PR to this page](https://github.com/mxtommy/Kip/blob/master/src/assets/help-docs/community.md), use the [KIP Discord channel](https://discord.gg/AMDYT2DQga) or open a [GitHub issue](https://github.com/mxtommy/Kip/issues)**!
4
+
5
+ Explore KIP in action and learn from the community. Below are curated videos, creator channels, and related ecosystem resources.
6
+
7
+ ## Community Video Library
8
+ Curated videos created by community members. Ordered to highlight broad onboarding value first.
9
+
10
+ | Thumbnail | Video | Focus | Author / Channel |
11
+ |-----------|-------|-------|------------------|
12
+ | ![KIP v3 Overview](https://i.ytimg.com/vi/53s4JsivXjU/hqdefault.jpg) | [KIP v3 – New Features, Setup & Configuration Walkthrough (Full Overview)](https://www.youtube.com/watch?v=53s4JsivXjU) | Full platform overview & configuration | Boating with the Baileys |
13
+ | ![Raspberry Pi Dashboard Review](https://i.ytimg.com/vi/vDWr8qbK55s/hqdefault.jpg) | [Full review raspberry PI dashboard for sailboats. SV GOAT teach](https://www.youtube.com/watch?v=vDWr8qbK55s) | Hardware + dashboard review (Raspberry Pi) | sailing sv goat |
14
+ | ![Open Source Boat Build Part IV](https://i.ytimg.com/vi/BOPwfBOE1DE/hqdefault.jpg) | [Building an Open Source Boat with Raspberry Pi & NMEA 2000 - Part IV - OpenPlotter, Signal K, KIP](https://www.youtube.com/watch?v=BOPwfBOE1DE) | Integration & onboard system build | The Florida Captain |
15
+ | ![SignalK Racer Widgets](https://i.ytimg.com/vi/oFX2F0z5xqU/hqdefault.jpg) | [SignalK racer plugin KIP widgets – July 2025](https://www.youtube.com/watch?v=oFX2F0z5xqU) | Racing plugin KIP widgets demo | Gregory J Wilkins |
16
+ | ![Charla Nautica Friki](https://i.ytimg.com/vi/3pnVsj44VO4/hqdefault.jpg) | [I Charla Náutica Friki: Raspberry, Domótica, Signal K, Interconexión de Equipos…](https://www.youtube.com/watch?v=3pnVsj44VO4) | Spanish session: ecosystem & integration | Luisloflipa Sailing |
17
+
18
+ Improve or add entries: PR or Discord #showcase.
19
+
20
+ ---
21
+
22
+ ## Authors & Channels
23
+ Creator channels producing helpful KIP or Signal K related content.
24
+
25
+ ### Boating with the Baileys
26
+ - Channel: https://www.youtube.com/@BoatingwiththeBaileys
27
+ - Focus: End‑user onboarding, feature walkthroughs, configuration best practices.
28
+ - Featured Video: [KIP v3 – New Features, Setup & Configuration Walkthrough](https://www.youtube.com/watch?v=53s4JsivXjU)
29
+
30
+ ### Sailing sv goat
31
+ - Channel: https://www.youtube.com/@sv_goat
32
+ - Focus: Practical onboard installs, Raspberry Pi builds, real‑world usage.
33
+ - Featured Video: [Full review Raspberry Pi dashboard for sailboats](https://www.youtube.com/watch?v=vDWr8qbK55s)
34
+
35
+ ### The Florida Captain
36
+ - Channel: https://www.youtube.com/@TheFloridaCaptain
37
+ - Focus: Open source boat build series, NMEA 2000 integration, system architecture.
38
+ - Featured Video: [Open Source Boat Build Part IV](https://www.youtube.com/watch?v=BOPwfBOE1DE)
39
+
40
+ ### Gregory J Wilkins
41
+ - Channel: https://www.youtube.com/@gregoryjwilkins6001
42
+ - Focus: Racing plugin experimentation, tactical visualization, performance tooling.
43
+ - Featured Video: [SignalK Racer Plugin KIP Widgets](https://www.youtube.com/watch?v=oFX2F0z5xqU)
44
+
45
+ ### Luisloflipa Sailing
46
+ - Channel: https://www.youtube.com/@luisloflipa
47
+ - Focus: Spanish-language coverage, integration discussions, DIY marine electronics.
48
+ - Featured Video: [Charla Náutica Friki](https://www.youtube.com/watch?v=3pnVsj44VO4)
49
+
50
+ ### Want to Be Listed?
51
+ Open a PR or post in Discord #showcase with:
52
+ - Channel name + link
53
+ - Focus summary (1 line)
54
+ - One featured video (link + short purpose sentence)
55
+
56
+ ---
57
+
58
+ ## More Community Resources
59
+
60
+ - [Signal K Home page](https://signalk.org/) — The open marine data standard powering KIP
61
+ - [Signal K Discord](https://discord.com/invite/uuZrwz4dCS) — Live chat server: questions, support, contribute and collaborate
62
+ - [Signal K GitHub Project](https://github.com/SignalK) — Feature requests, bug reports, and feedback
63
+ - [SensESP](https://signalk.org/SensESP/) — A Signal K sensor development toolkit for the ESP32 platform
64
+ - [OpenMarine Community](https://openmarine.net/) — OpenPlotter, MacArthur HAT and open source marine tech
65
+
66
+ ---
67
+
68
+ > Want to contribute a video or resource? Share your link in the Discord #showcase channel or open a GitHub issue!
@@ -1,4 +1,4 @@
1
- # Configuration Management
1
+ ## Configuration Management
2
2
 
3
3
  KIP provides a "Login to Server" option that determines where your configuration is stored. It is **strongly recommended** to enable server login in the **Settings** under the **Connectivity** tab. This ensures your configurations are stored remotely on the Signal K server and allows automatic loading of configuration from any device. See the "Creating a Signal K user" section below for information on how to create a user.
4
4
 
@@ -1,16 +1,66 @@
1
- # Get in Touch
1
+ ## Get in Touch
2
2
 
3
- We’d love to hear from you! KIP has an active community on the Signal K Discord server. Join us to get help, explore what others are doing with KIP and Signal K, stay updated with the latest news, and share your ideas.
3
+ We’d love to hear from you. The KIP community is active and friendly—whether you are just getting started, troubleshooting an installation, or brainstorming a new idea.
4
4
 
5
- 👉 **Join the conversation in the [KIP Discord channel](https://discord.gg/AMDYT2DQga).**
5
+ 👉 **Chat with the community in the [KIP Discord channel](https://discord.gg/AMDYT2DQga).**
6
+
7
+ Use Discord for quick questions, sharing dashboards, comparing hardware setups, and learning how others integrate KIP with Signal K.
6
8
 
7
9
  ---
8
10
 
9
- ## Feature Requests and Bug Reports
11
+ ## When to Use GitHub Issues
12
+
13
+ Please open a GitHub issue anytime you:
14
+ - Want to request a feature or enhancement
15
+ - Find a bug or regression
16
+ - Notice incorrect documentation
17
+ - Have a reproducible performance or stability problem
18
+
19
+ 🔗 **Create or review issues here: [KIP GitHub Issues](https://github.com/mxtommy/Kip/issues)**
20
+
21
+ Before creating a new issue:
22
+ 1. Use the search box to see if it already exists (add keywords like the widget name, setting, or error text).
23
+ 2. If you find an existing issue, add a comment or reaction instead of opening a duplicate.
10
24
 
11
- Have a great idea for a new feature? Found a bug? Let us know!
12
- Submit your feature requests or report issues directly on our GitHub project page:
25
+ ### What to Include in a Bug Report
26
+ Provide clear, specific details so we can reproduce and fix the problem faster:
27
+ - What you expected vs. what happened
28
+ - Steps to reproduce (numbered list if possible)
29
+ - KIP version (see About / build info) and deployment method (e.g. Signal K app store, manual build)
30
+ - Signal K server version
31
+ - Browser + version (e.g. Firefox 128, Chrome 129, Safari 18)
32
+ - Relevant widget(s) or data paths (e.g. `navigation.speedOverGround`)
33
+ - Screenshots or a short GIF (if visual)
34
+ - Console errors (from browser dev tools) if any
35
+
36
+ ### Feature Requests
37
+ Tell us:
38
+ - The problem you want to solve (not only the solution you imagine)
39
+ - Why it matters / how it improves use onboard
40
+ - Any related Signal K paths or data sources
41
+ - Rough idea of UI needs (new widget? setting? config option?)
42
+
43
+ If you’re willing to help test or prototype—say so. That speeds things up.
44
+
45
+ ---
46
+
47
+ ## Response Expectations
48
+ - Discord: often same-day community responses; core maintainer availability may vary.
49
+ - GitHub issues: triage typically within a few days; complex features may be discussed before acceptance.
50
+ - Pull requests: reviews depend on scope—small fixes are faster.
51
+
52
+ If something critical slips through, feel free to politely bump the issue after about a week.
53
+
54
+ ---
55
+
56
+ ## Contributing Beyond Issues
57
+ - Share dashboards, layouts, or usage patterns. Use the Discord #showcase chanel with a few pictures (great inspiration for others!).
58
+ - Help answer other users’ questions on Discord.
59
+ - Test new widgets or configuration flows and give feedback.
60
+
61
+ ---
13
62
 
14
- 🔗 **[KIP GitHub Issues](https://github.com/mxtommy/Kip/issues)**
63
+ ## Thank You
64
+ Your feedback, curiosity, and ideas directly shape KIP. Whether it’s a tiny typo fix or a major feature concept—every contribution moves the project forward.
15
65
 
16
- Your feedback helps us make KIP even better. Thank you for contributing!
66
+ Fair winds, and happy hacking.