Texture 
Texture is a toolset designed for the production of scientific content. It uses the Dar Format, which defines a stricter form of the JATS Archiving and Interchange Tag Set ("green" v. 1.1) XML standard.
Roadmap
Texture is still in a beta stage: there are likely to be missing features, bugs and API changes. But we would
- ✓ = ready for production use
- Beta = ready for beta user testing
We generally only plan one or two releases ahead, and aim ship regularly.
| Feature | Ready |
|---|---|
| General editing | Beta |
| Copy & Paste (from Word, etc.) | Beta |
| Find and Replace | Beta |
Auto-numbered labels (xref, fig, etc. ) |
✓ |
Reference editing (element-citation) |
✓ |
| Authors and Affiliations | ✓ |
| Dar Storage | ✓ |
Article Record (issue, fpage, etc.) |
✓ |
| Translations | ✓ |
| Group authors | ✓ |
| Realtime Collaborative Editing | |
| Supported Content | |
| Paragraph | ✓ |
| Heading | ✓ |
| Inline Formula | ✓ |
| Display Formula | 2.0 |
| Definition List | 2.0 |
| List | ✓ |
| Blockquote | ✓ |
| Figure | ✓ |
| Table | ✓ |
| Bold & Italic | ✓ |
| Ext-Link | ✓ |
| Subscript & Superscript | ✓ |
Install
You need Node 8.x installed on your system.
Clone the repository.
$ git clone https://github.com/substance/texture.gitNavigate to the source directory.
$ cd textureInstall via npm.
$ npm installStart the dev server.
$ npm startAnd navigate to http://localhost:4000.
You can save your document changes by pressing CommandOrControl+S.
To test with your own JATS-documents, just replace the contents of data/kitchen-sink/manuscript.xml.
Texture Desktop
We also offer Texture wrapped in an Electron application.
$ npm run appTo package the application for distribution do the following:
$ npm run releaseRunning tests
Running tests in NodeJS (like it is done on TravisCI):
npm testDebugging NodeJS tests:
node make test-nodejs && node --inspect-brk --require esm test/index.js
Then open chrome://inspect. It should show a Remove Target for the test script. Clicking on inspect opens a new window with Chrome Developer Tools.
Running a some NodeJS tests:
TEST="Model" npm test
The environment variable TEST is used as a filter to select test that have that pattern in their name.
Running tests in the browser:
node make test-browser -w -s
Then open localhost:4000/test.
License
Texture is open source (MIT license), 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.
Credits
Texture is developed by the Substance Consortium formed by the Public Knowledge Project (PKP), the Collaborative Knowledge Foundation (CoKo), SciELO, Érudit and eLife.
The following people make Texture possible (in random order):
- Alex Garnett (leadership, concept)
- Juan Pablo Alperin (leadership, concept)
- Alex Smecher (concept, dev)
- Tanja Niemann (leadership)
- Melissa Harrison (requirements)
- Giuliano Maciocci (requirements, concept)
- Naomi Penfold (leadership)
- Nick Duffield (design)
- Davin Baragiotta (concept, dev)
- David Cormier (dev)
- Sophy Ouch (design)
- Philipp Zumstein (dev)
- Fabio Batalha Cunha dos Santos (leadership, concept)
- James Gilbert (UX, requirements)
- Luciano Gabriel Panepucci (UX)
- Michael Aufreiter (dev)
- Oliver Buchtala (dev)
- Daniel Beilinson (dev)


