From 9a93fc9e046c28ec504240a5beefcba46607f967 Mon Sep 17 00:00:00 2001 From: Chris Sherwood Date: Wed, 28 Jan 2026 09:40:21 -0800 Subject: [PATCH] feat: Expand Legal Notices and move to bottom of Settings sidebar - Move Legal Notices to bottom of Settings sidebar (below System) - Add Third-Party Software Attribution section (Kiwix, Kolibri, Open WebUI, Ollama, CyberChef, FlatNotes) - Add Privacy Statement (zero telemetry, local-first, no accounts, offline-capable) - Add Content Disclaimer for third-party content - Add Medical and Emergency Information Disclaimer - Add Data Storage section with installation paths Co-Authored-By: Claude Opus 4.5 --- admin/inertia/layouts/SettingsLayout.tsx | 4 +- admin/inertia/pages/settings/legal.tsx | 161 +++++++++++++++++++---- 2 files changed, 140 insertions(+), 25 deletions(-) diff --git a/admin/inertia/layouts/SettingsLayout.tsx b/admin/inertia/layouts/SettingsLayout.tsx index 61c3ab9..5257558 100644 --- a/admin/inertia/layouts/SettingsLayout.tsx +++ b/admin/inertia/layouts/SettingsLayout.tsx @@ -21,7 +21,6 @@ const navigation = [ { name: 'Benchmark', href: '/settings/benchmark', icon: ChartBarIcon, current: false }, { name: 'Content Explorer', href: '/settings/zim/remote-explorer', icon: MagnifyingGlassIcon, current: false }, { name: 'Content Manager', href: '/settings/zim', icon: FolderIcon, current: false }, - { name: 'Legal Notices', href: '/settings/legal', icon: IconGavel, current: false }, { name: 'Maps Manager', href: '/settings/maps', icon: IconMapRoute, current: false }, { name: 'Service Logs & Metrics', @@ -36,7 +35,8 @@ const navigation = [ icon: IconArrowBigUpLines, current: false, }, - { name: 'System', href: '/settings/system', icon: Cog6ToothIcon, current: true }, + { name: 'System', href: '/settings/system', icon: Cog6ToothIcon, current: false }, + { name: 'Legal Notices', href: '/settings/legal', icon: IconGavel, current: false }, ] export default function SettingsLayout({ children }: { children: React.ReactNode }) { diff --git a/admin/inertia/pages/settings/legal.tsx b/admin/inertia/pages/settings/legal.tsx index 20d6b9c..f11215d 100644 --- a/admin/inertia/pages/settings/legal.tsx +++ b/admin/inertia/pages/settings/legal.tsx @@ -1,32 +1,147 @@ import { Head } from '@inertiajs/react' import SettingsLayout from '~/layouts/SettingsLayout' -export default function SettingsPage() { +export default function LegalPage() { return ( - +
-
-

Legal Notices

-

License Agreement & Terms of Use

-

Copyright 2025 Crosstalk Solutions, LLC

-

- 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: The above copyright notice and this permission notice shall be included in - all copies or substantial portions of the Software. -

-

- 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. -

+
+

Legal Notices

+ + {/* License Agreement */} +
+

License Agreement

+

Copyright 2025 Crosstalk Solutions, LLC

+

+ 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: The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. +

+

+ 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. +

+
+ + {/* Third-Party Software */} +
+

Third-Party Software Attribution

+

+ Project N.O.M.A.D. integrates the following open source projects. We are grateful to + their developers and communities: +

+ +
+ + {/* Privacy Statement */} +
+

Privacy Statement

+

+ Project N.O.M.A.D. is designed with privacy as a core principle: +

+
    +
  • Zero Telemetry: N.O.M.A.D. does not collect, transmit, or store any usage data, analytics, or telemetry.
  • +
  • Local-First: All your data, downloaded content, AI conversations, and notes remain on your device.
  • +
  • No Accounts Required: N.O.M.A.D. operates without user accounts or authentication by default.
  • +
  • Network Optional: An internet connection is only required to download content or updates. All installed features work fully offline.
  • +
+
+ + {/* Content Disclaimer */} +
+

Content Disclaimer

+

+ Project N.O.M.A.D. provides tools to download and access content from third-party sources + including Wikipedia, Wikibooks, medical references, educational platforms, and other + publicly available resources. +

+

+ Crosstalk Solutions, LLC does not create, control, verify, or guarantee the accuracy, + completeness, or reliability of any third-party content. The inclusion of any content + does not constitute an endorsement. +

+

+ Users are responsible for evaluating the appropriateness and accuracy of any content + they download and use. +

+
+ + {/* Medical Disclaimer */} +
+

Medical and Emergency Information Disclaimer

+

+ Some content available through N.O.M.A.D. includes medical references, first aid guides, + and emergency preparedness information. This content is provided for general + informational purposes only. +

+

+ This information is NOT a substitute for professional medical advice, diagnosis, or treatment. +

+
    +
  • Always seek the advice of qualified health providers with questions about medical conditions.
  • +
  • Never disregard professional medical advice or delay seeking it because of something you read in offline content.
  • +
  • In a medical emergency, call emergency services immediately if available.
  • +
  • Medical information may become outdated. Verify critical information with current professional sources when possible.
  • +
+
+ + {/* Data Storage Notice */} +
+

Data Storage

+

+ All data associated with Project N.O.M.A.D. is stored locally on your device: +

+
    +
  • Installation Directory: /opt/project-nomad
  • +
  • Downloaded Content: /opt/project-nomad/storage
  • +
  • Application Data: Stored in Docker volumes on your local system
  • +
+

+ You maintain full control over your data. Uninstalling N.O.M.A.D. or deleting these + directories will permanently remove all associated data. +

+
+