Files
regex-tools/docs/PORTAL_REQUIREMENTS.md

1.5 KiB

Portal requirements

Regex Tools is a static nested-path-safe application.

Required delivery behavior:

  • JavaScript workers use a JavaScript MIME type.
  • toolbox-app.json, HTML and legal/source documents should remain revalidation/no-cache resources.
  • Hashed Vite assets may use immutable long-term caching.
  • CSP must allow worker-src 'self' blob:.
  • engines/pcre2/pcre2.wasm and engines/python/pyodide.asm.wasm must use application/wasm.
  • Engine .mjs files must use a JavaScript MIME type; engines/python/python_stdlib.zip, JSON, licence, notice and checksum files must be delivered without content transformation.
  • script-src must permit self-hosted WebAssembly compilation, normally with 'wasm-unsafe-eval'; broad 'unsafe-eval' is neither needed nor recommended.
  • connect-src 'self' must allow the Pyodide worker to fetch its own same-origin WebAssembly, standard-library and lock files.
  • Every file below engines/pcre2/, engines/python/ and engines/java/ should use revalidation or a release-scoped immutable cache. These are not content-hashed filenames and must never drift under one release identity.

The Portal must consume the immutable release ZIP, verify its SHA-256, verify manifest ID de.add-ideas.regex-tools and version 0.3.0, and mount it at a relative target such as apps/regex/.

The package, manifest, tag, artifact URL and checksum must all use the v0.3.0 identity. Historical artifact coordinates remain immutable and must not be overwritten or reused.