Markx
Markdown editor for scientific writing. Batteries included.
Why Markx?
Markdown has recently become popular among academics as a way to produce scientific documents.
When paired with document conversion engines such as pandoc, it provides an easy and powerful way to write.
Being a simple plain-text markup language, Markdown is easy to learn, and can be handled by version control systems.
We decided to build Markx as to make markdown writing a collaborative effort that could be hosted as web service.
For additional discussion, see these blog posts:
![](https://raw.github.com/yoavram/markx/master/screenshot.png)
Features
- Free as in free speech - promotes open science, pre-publication review, collaboration.
- Free as in free beer - uses open-source, free software and released under CC-NC-BY 3.0.
- Easy to learn - Markdown is not LaTex, for better and worse.
- Integration with GitHub - free hosted version control, ideal for backup, versioning and collaboration.
- Pandoc integration - multiple Markdown extensions, multiple output formats.
- Real-time Markdown preview - WYSIWYM / WYSIWYG.
- Display math with LaTeX formatting - $x^2+y^2=r^2$.
- Citations - BibTeX: [@Drake1991]
-
Code highlighting:
if __name__ == '__main__':
# Bind to PORT if defined, otherwise default to 5000.
port = int(os.environ.get('PORT', 5000))
app.run(host='0.0.0.0', port=port, debug=app.debug)
- Local host option with a limited number of dependencies - for offline editing on the train and in the airplane
- Remote host option at http://markx.herokuapp.com/ - no installation required
- By scientists, for scientists
Development Status
Markx is currently in development but can be used locally (see Installation instructions below) or remotely at http://markx.herokuapp.com.
It is still experimental, so take care of your data!
We would love to get feedback from anyone using it - Please open an issue with any bug or suggestion.
If you can't open an issue please contact Yoav on twitter (you can use the #markx
hashtag).
Technology
- Server side (this is what you need to install if you run it on localhost):
- Client side (no installation required):
- 3rd Party services:
- GitHub - version control hosting
- Docverter - online conversion of Markdown to multiple formats (currently, citations are not supported)
- LaTeX-Online - online compilation of LaTeX to PDF
Install locally
- Clone this repository
- Install Python - developed with version 2.7
- Install Flask and requests:
pip install Flask requests
- Optionally install Pandoc
- Run Markx by calling
python server.py
and pointing your browser at http://localhost:5000.
- Load a BibTeX file with your citation library by choosing
Load a Bibliography File
from the Bibliography
menu
More help can be found in the help file.
License
![](http://i.creativecommons.org/l/by-nc-sa/3.0/80x15.png)