Privacy, Accessibility & Licenses
One place for the TCEA MediaMkr collection's privacy practices, accessibility commitments, and third-party license notices.
Privacy
TCEA MediaMkr is designed to protect student and educator privacy.
What we do
- No accounts. You do not create an account or sign in.
- No tracking or advertising. There are no analytics scripts or ad trackers.
- No student data collection. The tools do not ask for student names, emails, or other personal information.
- Local processing. Your files are opened, edited, and exported in your own browser. The tools are built to avoid uploading your media to a server.
- Local downloads. When you export, the finished file is saved to your device by your browser.
Fonts
The pages load web fonts (DM Sans, DM Serif Display, DM Mono) from Google Fonts. If your deployment requires zero third-party requests, the fonts can be self-hosted; the layout falls back to system fonts automatically.
Browser permissions
Some tools ask for a browser permission only when you choose a feature that needs it — for example, AudioMkr requests microphone access when you start recording, and screen capture is requested only when you use it. You can decline these and still use the rest of the tool.
Per-tool behavior
Each application documents its actual file, storage, and network behavior in its own folder and in docs/privacy-inventory.md. We do not claim that every operation is fully local unless it has been verified for that specific tool.
Contact
Questions about privacy can be directed to TCEA at <https://tcea.org/>.
Accessibility
TCEA MediaMkr targets WCAG 2.2 AA. Accessibility is treated as a requirement, not an afterthought, across the collection.
Shared commitments
- Keyboard navigation for interactive controls.
- Visible focus indicators (
:focus-visible) on all focusable elements. - Screen-reader labels on controls, menus, and dialogs.
- Color contrast that meets AA for text and essential UI.
- Responsive layouts that reflow on small screens and when zoomed.
prefers-reduced-motionis honored; non-essential animation is suppressed.- A skip link to jump straight to main content.
- Alternative text for meaningful images; decorative icons are hidden from assistive technology.
Canvas-based editors
Image, video, and drawing tools use a canvas, which is inherently visual. Where a tool relies on a canvas, it provides keyboard-accessible controls and reasonable accessible alternatives (for example, data tables or text summaries for charts in PlotMkr).
Known limits
We do not claim full conformance for every tool until it has been tested with assistive technology. Per-tool accessibility notes are tracked as each application is migrated and verified.
Reporting
If you hit an accessibility barrier, please report it via TCEA at <https://tcea.org/> so it can be prioritized.
Licenses & Third-Party Notices
Third-Party Licenses
TCEA MediaMkr bundles third-party open-source components. Each keeps its own copyright and license. This inventory is updated as each tool is migrated; any component that ships inside an application's folder also carries its own license or notice file alongside the code.
> Status: This file is maintained per application. As each tool is added, its > third-party dependencies (and on-device models, where used) are recorded below > with name, version, license, and source.
Shared
| Component | Purpose | License |
|---|---|---|
| DM Sans, DM Serif Display, DM Mono (Google Fonts) | Typography | SIL Open Font License 1.1 |
Per-application
CodeMkr
| Component | Version | Purpose | License | Source |
|---|---|---|---|---|
| qrcode.js (Kazuhiko Arase) | bundled | QR code generation | MIT | http://www.d-project.com/ |
The MIT copyright/license header is preserved in apps/codemkr/assets/vendor/qrcode.js. "QR Code" is a registered trademark of DENSO WAVE INCORPORATED.
MemeMkr
No third-party libraries. Captioning is original canvas code. Fonts as noted under Shared.
PuzzleMkr
| Component | Purpose | License | Source |
|---|---|---|---|
| JSZip | .xlsx import template export | MIT | https://github.com/Stuk/jszip |
JSZip bundled at apps/puzzlemkr/vendor/jszip.min.js. Puzzle logic and the library packs are original project content.
PlotMkr
No third-party libraries. Charts, math evaluation, and renderers are original project code (canvas/SVG). Fonts as noted under Shared.
PixelMkr
No new third-party libraries. The GIF encoder is original project code; smart background removal reuses BGMkr's on-device engine (see BGMkr: Transformers.js Apache-2.0, ONNX Runtime MIT, models ORMBG/BEN2). Fonts as noted under Shared.
BGMkr
Runtime (bundled locally under apps/bgmkr/assets/vendor/, license files included):
| Component | Version | License | Source |
|---|---|---|---|
| Transformers.js | 3.8.1 | Apache-2.0 | https://github.com/huggingface/transformers.js |
| ONNX Runtime Web | 1.22.0-dev | MIT | https://github.com/microsoft/onnxruntime |
| @huggingface/jinja | 0.5.3 | MIT | https://github.com/huggingface/transformers.js |
| JSZip | bundled | MIT (or GPL-3.0-or-later; used under MIT) | https://github.com/Stuk/jszip |
Models (downloaded on request from Hugging Face, not bundled; pixels never sent):
| Model | License | Source |
|---|---|---|
| ORMBG (Fast) | Apache-2.0 | https://huggingface.co/onnx-community/ormbg-ONNX |
| BEN2 (Best) | MIT, © 2025 Prama LLC | https://huggingface.co/onnx-community/BEN2-ONNX |
Runtime license texts and SHA-256 checksums are preserved in apps/bgmkr/assets/vendor/. White/color removal and built-in backgrounds work fully offline with no model download.
GIFMkr
No third-party libraries. The GIF encoder and MP4 muxer are original project code (AGPL-3.0-or-later); MP4 export uses the browser's built-in WebCodecs API. Fonts as noted under Shared.
AudioMkr
Built from source (Vite). Bundled runtime for in-browser transcription:
| Component | License |
|---|---|
| ONNX Runtime Web | MIT |
| whisper (ggml) on-device model/runtime | MIT |
All audio recording/editing is local (Web Audio API). Transcription runs on device via the bundled WASM runtime.
FormatMkr
Built from source (Vite). Bundled runtime:
| Component | License |
|---|---|
| FFmpeg (ffmpeg.wasm core) | LGPL/GPL (see ffmpeg/FONT-LICENSE + upstream) |
| DejaVu Sans (subtitle font) | Bitstream Vera / public-domain-like (ffmpeg/FONT-LICENSE.txt) |
| whisper (ggml) + ONNX Runtime Web | MIT |
Media processing is local (FFmpeg WASM). Google Drive saving is stubbed (needs org OAuth); every output offers local Download.
ClipMkr
Built from source (Vite). Bundled runtime:
| Component | License |
|---|---|
| MediaPipe (vision/selfie-seg) | Apache-2.0 |
| whisper (ggml) + ONNX Runtime Web | MIT |
| ffmpeg.wasm (subtitle burn-in) | LGPL/GPL (bundled in apps/clipmkr/ffmpeg) |
Video editing/recording is local. Google Drive export stubbed (needs org OAuth).
BingoMkr
No third-party libraries. Original project code. Fonts as noted under Shared.
DocMkr
Full PDF suite. Bundled libraries (local):
| Component | Purpose | License |
|---|---|---|
| pdf-lib | PDF editing | MIT, © 2019 Andrew Dillon |
| pdf.js (Mozilla) | PDF rendering | Apache-2.0 |
| JSZip | packaging/export | MIT |
| Tesseract.js + tesseract-core (vendor/ocr) | OCR | Apache-2.0 |
| eng/spa traineddata | OCR language data | Apache-2.0 |
| hash-wasm argon2 | key derivation (encryption) | MIT |
License texts are preserved under apps/docmkr/vendor/. All processing is local; Google Drive export is not configured in this edition.
If you believe a required attribution is missing, please open an issue so it can be added promptly.