User:N9986/Beacon Editor

Beacon Editor is a a web based WYSIWYG XML editor which uses XSLT in the back-end to show editable HTML in the browser. Its functionality can be extended by writing plugins which enable it to recognize other type of XML formats. Currently it supports GuideXML and Docbook.

The back-ends for Beacon are written in both PHP and Python and user can choose either of two. Front end almost entirely relies on Javascript.

Design view
The design view deviates from standard WYSIWYG paradigm by using a fill-in-the-blanks approach. It displays the document as it would be rendered when XML is processed so the user can have a live preview of the document. For editing Beacon uses inline editors which open up when the user clicks an area on the document. This is done to prevent bad XML from being generated which can happen due to quirks in the contentEditable mode of Browsers. It also uses a document tree that helps in adding new block elements and navigating the document easily.

Source view
Source view uses a simple text field that shows the current XML. There are plans of using CodeMirror to make plain XML editing much more easier.

Licensing
Beacon is licensed under GNU General Public License (version 3 or later).