For AI agents: the complete documentation index is available at /llms.txt, the full documentation bundle is available at /llms-full.txt, and this page is available as Markdown at /project/status.md.
  • English
  • Status and Compatibility

    Version status

    ItemCurrent state
    Version0.1.0-alpha.1
    Distributionnpm, alpha dist-tag; install with pnpm add react-wikitext@alpha
    Stability0.x releases follow semantic versioning; minor versions may break public APIs
    ChangelogGitHub Releases
    Documentationreact-wikitext.pages.dev; tracks the main branch, no version switcher

    Installation is covered in Quick start.

    Runtime compatibility

    ItemSupported range
    React>=18.2 <20 (peer dependency)
    Node>=18.18 at runtime; the repository and CI main job use Node 24
    Module formatESM and CJS, both with type declarations
    BundlersVite and webpack 5 consumer builds are covered by tests
    BrowsersOutput targets ES2022; IE and older browsers are unsupported
    Runtime dependenciesNo Wikimedia, font CDN, or external API dependency

    The npm package only contains dist/, NOTICE, and THIRD_PARTY_LICENSES; see the contributing guide for building from source.

    Pinned upstream

    ItemValue
    Parserwikiparser-node@1.48.1
    Default site configMEDIAWIKI_CONFIG from the same version's snapshot

    Upgrading the parser changes AST shape, source ranges, and the rendering baseline. Re-run rendering and security review.

    Snapshot versions

    ConstantValueApplies to
    AST_SCHEMA_VERSION1Semantic AST
    SYNTAX_SCHEMA_VERSION1Source syntax tree
    RENDER_SCHEMA_VERSION1Render snapshot

    A version change is a structural break. Include versions in cache keys; restore rejects mismatched data.

    Styling and security baseline

    • Styles live in react-wikitext/styles.css and must be imported explicitly; there are no global element styles.
    • Inline styles keep only whitelisted layout and appearance declarations; values using url(), expression(), or !important are dropped whole and reported as diagnostics. There is no eval dependency; under strict CSP, allow style-src as needed for them to apply.
    • No dangerouslySetInnerHTML; the final HAST comes from the sanitizer and wiki policy.
    • Images are not loaded by default; only authorized URLs (from a resolver, or an explicitly enabled plugin-image policy) become <img>.
    • React entries depend on Context and only run in Client Components; the root entry and /view ship a "use client" directive, so the host does not need to repeat it.

    See Security model and Rendering behavior for the full boundaries.

    Verifying compatibility

    CommandChecks
    pnpm testUnit and rendering tests
    pnpm typecheckSource types
    pnpm test:types:consumerConsumer type resolution (Node16 and bundler)
    pnpm test:consumerdist entries, subpath isolation, CSS, Vite/webpack, view-only
    pnpm benchParsing and rendering benchmarks

    After upgrading React, the parser, or bundler config, at least run test:consumer and test.

    License

    • The library is released under GPL-3.0-or-later.
    • wikiparser-node@1.48.1 uses the same license.
    • Third-party notices are in NOTICE and THIRD_PARTY_LICENSES at the repository root.

    Check GPL-3.0-or-later compatibility before distributing builds that include this library.