Documentation & licensing: - Add the EUPL-1.2 licence (LICENSE.md) and set the project licence; refresh the README (name origin wink, updated feature list, documentation index). - Add CONTRIBUTING, SECURITY, CODE_OF_CONDUCT, CHANGELOG, AUTHORS, and THIRD_PARTY_NOTICES, plus docs/ (ARCHITECTURE, BUILD, USER_GUIDE, SHORTCUTS, LICENSE_COMPLIANCE) and .github/ (CI workflow, issue/PR templates). - Bring docs/FILE_FORMAT.md in line with current behaviour (code & chart slides, per-slide TLP comment, annotation .ink.json sidecar, chart data/ CSVs). Open-source compliance: - Add tool/check_licenses.dart and a `make licenses` target (wired into check-full and CI) that verifies every resolved dependency uses a recognised open-source licence. A scan of all 151 packages and bundled assets found only OSI-approved licences. Charts (Fase 1.1): - Replace the chart CSV textarea with an in-app editable data grid (editable series/labels/values, add/remove row & column, read-only when linked). - Centralize the linked-CSV directory name (`data/`) in a shared constant. Also normalize formatting repo-wide with `dart format` and fix one curly-braces lint, so `make check` and CI are green. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
3.1 KiB
Third-Party Notices
OciDeck is licensed under the EUPL-1.2 (see LICENSE.md). It
builds on, and bundles, third-party components that remain under their own
licences. This file lists them; each component's full licence text is available
from its project or package page.
Bundled runtime assets
Shipped inside the app and embedded into the offline HTML export
(assets/web_export/) and the UI:
| Component | Used for | Licence |
|---|---|---|
| marked | Markdown → HTML in the export | MIT |
| highlight.js | Code highlighting in the export | BSD-3-Clause |
| Mermaid | Diagrams in the export | MIT (bundles DOMPurify, Apache-2.0 / MPL-2.0) |
MathJax (tex-svg.js) |
Math rendering in the export | Apache-2.0 |
| EB Garamond font | Bundled deck font | SIL Open Font License 1.1 |
Vendored (forked) plugins
Kept in third_party/ and wired in via pubspec.yaml (path dependency /
dependency_overrides). Both are forks of upstream plugins with local native
changes; see docs/ARCHITECTURE.md.
| Component | Origin | Licence | Local changes |
|---|---|---|---|
desktop_multi_window |
MixinNetwork/flutter-plugins | MIT | Added native macOS window placement/fullscreen/close methods for the dual-screen presenter |
screen_retriever_macos |
leanflutter/screen_retriever | MIT | Packaging fix for recent Xcode/CocoaPods |
Dart & Flutter packages
Direct dependencies (see pubspec.yaml for exact version constraints). Each is
distributed under its own OSI-approved licence as published on
pub.dev; most are MIT, BSD-3-Clause, or Apache-2.0.
flutter,flutter_localizations(Flutter SDK — BSD-3-Clause)flutter_riverpodfile_pickerpath_provider,pathuuidscreen_retriever,window_managershared_preferencespasteboardpdfarchivevideo_playercharactersurl_launcherdesktop_dropimageflutter_highlight,highlightflutter_math_forkwakelock_plusfl_chartcupertino_icons
To regenerate an authoritative, version-pinned licence inventory you can use a tool such as
flutter pub depstogether with a licence-collection package.
Licence audit
A scan of all resolved Dart/Flutter packages (direct and transitive) and the
bundled assets found only OSI-approved open-source licences — MIT, BSD
(2-/3-Clause), Apache-2.0, MPL-2.0, and the SIL Open Font License 1.1. No
proprietary or source-unavailable components are included. (The only MPL-2.0
dependency is dbus, used on Linux.) Re-run such a scan after changing
dependencies.
Run it yourself with make licenses (or dart run tool/check_licenses.dart).
The policy, method, and latest result are documented in
docs/LICENSE_COMPLIANCE.md.