/wikiparser-node

A Node.js/browser parser for MediaWiki markup with AST

Primary LanguageTypeScriptGNU General Public License v3.0GPL-3.0

npm version CodeQL CI

Other Languages

Introduction

WikiParser-Node is an offline Wikitext parser developed by Bhsd for the Node.js environment. It can parse almost all wiki syntax and generate an Abstract Syntax Tree (AST) (Try it online). It also allows for easy querying and modification of the AST, and returns the modified wikitext.

Other Versions

Mini (also known as WikiLint)

This version provides a CLI, but only retains the parsing functionality and linting functionality. The parsed AST cannot be modified. It is used in the eslint-plugin-wikitext plugin.

Browser-compatible

A browser-compatible version, which can be used for code highlighting or as a linting plugin in conjunction with editors such as CodeMirror and Monaco. (Usage example)

Installation

Node.js

Please install the corresponding version as needed (WikiParser-Node or WikiLint), for example:

npm i wikiparser-node

or

npm i wikilint

Browser

You can download the code via CDN, for example:

<script src="//cdn.jsdelivr.net/npm/wikiparser-node@browser/bundle/bundle.min.js"></script>

or

<script src="//unpkg.com/wikiparser-node@browser/bundle/bundle.min.js"></script>

For more browser extensions, please refer to the corresponding documentation.

Usage

Please refer to the Wiki.