Namespace Pollution Mechanism


    1.0.0-alpha.3 • Public • Published

    Texture Build Status

    Texture is a toolset for the production of scientific content. It has first-class support for JATS, the de facto standard for archiving and interchange of scientific open-access contents with XML. Texture User Interface


    Texture is still at an early alpha stage: there are likely to be missing features, bugs and API changes. But we would ❤️ to get your suggestions and 🐛 reports.

    • prod = ready for production use
    • beta = ready for beta user testing
    • alpha = ready for alpha testing; use with caution
    • Planned for release (e.g. Alpha 4)

    We generally only plan one or two releases ahead. We aim to do quaterly releases, towards a 1.0 release in 2018. Please see our more detailed document.

    Feature Ready
    General editing beta
    Copy & Paste (from Word, etc.) beta
    Find and Replace alpha
    Auto-numbered labels (xref, fig, etc. ) beta
    Reference editing (element-citation) alpha
    Authors and Affiliations alpha
    Article Record (issue, fpage, etc.) alpha
    Translations alpha
    Supported Content
    Article Title prod
    Abstract prod
    Paragraph prod
    Headings prod
    Image alpha
    Figure alpha
    List Alpha 4
    Table alpha
    Bold & Italic prod
    Ext-Link prod
    Subscript & Superscript prod
    Blockquote beta
    JATS4R -> TextureJATS alpha
    TextureJATS -> JATS4R alpha
    JATS -> JATS4R alpha
    Testsuite for transformations Alpha 4
    Virtual Filesystem for XML + assets Alpha 4
    Archive File Format (based on .tar.gz) Beta 1
    Desktop app for OSX, Windows, Linux Beta 1


    const { Texture } = window.texture
 = Texture.mount({
      documentId: 'some-doc-id',
      readXML: function(documentId, cb) {
        // fetch an XML string to be read by the editor
      writeXML: function(documentId, xml, cb) {
        // write the XML string to a store
    }, document.body)

    See our examples for a complete integration scenarios. The best way to start is downloading the zip file from the latest release.


    Clone the repository.

    $ git clone

    Navigate to the source directory.

    cd texture

    At the moment, the default branch provides the develop version. To get the latest stable version switch to the master branch.

    $ git checkout master

    Install via npm.

    $ npm install

    Start the dev server.

    $ npm run start

    And navigate to http://localhost:4000.


    Texture is open source, and you are legally free to use it commercially. If you are using Texture to make profit, we expect that you help fund its development and maintenance.


    Texture is developed by the Substance Consortium formed by the Public Knowledge Project (PKP), the Collaborative Knowledge Foundation (CoKo), SciELO and Érudit.

    The following people make Texture possible:

    • Alex Garnett (leadership, concept)
    • Juan Pablo Alperin (leadership, concept)
    • Alex Smecher (concept, dev)
    • Kristen Ratan (leadership)
    • Adam Hyde (leadership)
    • Jure Triglav (concept, dev)
    • Tanja Niemann (leadership)
    • Davin Baragiotta (concept, dev)
    • David Cormier (dev)
    • Sophy Ouch (design)
    • Fabio Batalha Cunha dos Santos (leadership, concept)
    • Michael Aufreiter (dev)
    • Oliver Buchtala (dev)




    npm i substance-texture

    DownloadsWeekly Downloads






    Last publish


    • michael
    • oliver