typademic
typademic copied to clipboard
Typademic turns distraction freely written markdown files into beautiful PDFs.
typademic
.. warning:: This is the last release of typademic. This software will not be continued. The functionality of typademic was integrated into https://github.com/maehr/academic-pandoc-template directly via GitHub actions in a more convenient and secure way.
Typademic turns distraction freely written markdown files into beautiful
PDFs. Built with love, Google Fonts <https://fonts.google.com/>,
Pandoc <http://pandoc.org/>, and
LaTeX <https://www.latex-project.org/>__.
|Docs| |Build Status Docker| |CircleCI| |Build Status Travis| |Coverage| |Maintainability| |PyUp| |Requirements Status| |GitHub issues| |GitHub forks| |GitHub stars| |GitHub license|
Getting Started
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.
Prerequisites
Install all this to use all functions of typademic.
- `Google Fonts <https://github.com/google/fonts>`__
- `LaTeX <https://www.latex-project.org/get/>`__
- `Pandoc <http://pandoc.org/installing.html>`__
- `Pandoc Citeproc <https://github.com/jgm/pandoc-citeproc>`__
- `Python 3 <https://www.python.org/downloads/>`__
- `OpenSSL <https://www.openssl.org/source/>`__
Mac with `Homebrew <https://brew.sh/index_de>`__
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. code:: bash
brew install python openssl mactex pandoc pandoc-citeproc wget
wget https://raw.githubusercontent.com/qrpike/Web-Font-Load/master/install.sh | bash
Ubuntu 18.04
^^^^^^^^^^^^
.. code:: bash
sudo apt-get update -y
sudo apt-get install -y texlive-full wget
wget https://raw.githubusercontent.com/qrpike/Web-Font-Load/master/install.sh | bash
wget -O pandoc.deb https://github.com/jgm/pandoc/releases/download/2.11.0.4/pandoc-2.11.0.4-1-amd64.deb
sudo dpkg -i pandoc.deb
pip install --upgrade pip
Installing
~~~~~~~~~~
.. code:: bash
virtualenv venv
source venv/bin/activate
pip install .
Start the development server
.. code:: bash
python app.py
Running the tests
.. code:: bash
pip install tox tox
Deployment (BEGINNER)
-
Install
Docker CE <https://www.docker.com/community-edition>__. -
Export your secrets and start the latest
typademic docker image <https://hub.docker.com/r/maehr/typademic/>__.
.. code:: bash
touch logs/error.log
touch logs/access.log
export SECRET_KEY=SOMESECRETKEY
docker run --name typademic
-p 443:8000
-e "SECRET_KEY=${SECRET_KEY}"
-v "./logs/error.log:/logs/error.log"
-v "./logs/access.log:/logs/access.log"
-v "./uploads/:/uploads/"
maehr/typademic:latest
- Go to https://localhost/ (If you did not add valid SSL certificates, ignore the error message.)
Deployment (ADVANCED)
-
Add your custom SSL certificates (
key.pemandcrt.pem) to the root directory. Otherwise private certificates will be issued. -
Create a
secrets.envand add your env vars.
.. code:: bash
cp secrets.example.env secrets.env nano secrets.env
- Change
docker-compose.ymlaccordingly.
.. code:: yaml
uncomment this line for production use
env_file: ./secrets.env
comment this line for production use
environment: - SECRET_KEY=${SECRET_KEY}
- Start typademic and go to https://localhost/
.. code:: bash
docker-compose up
Built With
Bulma.io <https://bulma.io/>__CircleCI <https://circleci.com/>__Cookiecutter <https://github.com/audreyr/cookiecutter>__Docker CE <https://www.docker.com/community-edition>__Flask <http://flask.pocoo.org/>__Flask-Dropzone <https://github.com/greyli/flask-dropzone>__Flask-WTF <https://flask-wtf.readthedocs.io/>__Google Fonts <https://fonts.google.com/>__LaTeX <https://www.latex-project.org/>__Pandoc <http://pandoc.org/>__Web-Font-Loader <https://github.com/qrpike/Web-Font-Load>__
Contributing
Please read CONTRIBUTING.rst <CONTRIBUTING.rst>__ for details on our
code of conduct, and the process for submitting pull requests to us.
Versioning
We use SemVer <http://semver.org/>__ for versioning. For the versions
available, see the tags on this repository <https://github.com/maehr/typademic/tags>__.
Authors
Please read AUTHORS.rst <AUTHORS.rst>__ for details on the authors.
See also the list of contributors <https://github.com/maehr/typademic/contributors>__ who
participated in this project.
License
This project is licensed under the MIT License - see the
LICENSE.rst <LICENSE.rst>__ file for details
Acknowledgments
John Gruber <https://daringfireball.net/projects/markdown/>__John MacFarlane <http://johnmacfarlane.net/>__Sarah Simpkin, “Getting Started with Markdown,” The Programming Historian 4 (2015) <https://programminghistorian.org/en/lessons/getting-started-with-markdown>__Dennis Tenen and Grant Wythoff, “Sustainable Authorship in Plain Text using Pandoc and Markdown,” The Programming Historian 3 (2014) <https://programminghistorian.org/en/lessons/sustainable-authorship-in-plain-text-using-pandoc-and-markdown>__
.. |Docs| image:: https://readthedocs.org/projects/pip/badge/?version=latest&style=flat :target: https://docs.typademic.ch/ .. |CircleCI| image:: https://circleci.com/gh/maehr/typademic.svg?style=shield&circle-token=f7ea42d593cc8107242a9ebd489b025c4c33328f :target: https://circleci.com/gh/maehr/typademic .. |Build Status Travis| image:: https://travis-ci.org/maehr/typademic.svg?branch=master :target: https://travis-ci.org/maehr/typademic .. |Build Status Docker| image:: https://img.shields.io/docker/cloud/automated/maehr/typademic.svg :target: https://hub.docker.com/r/maehr/typademic/ :alt: Docker Cloud Automated build .. |Coverage| image:: https://api.codeclimate.com/v1/badges/ea819aa50e494e14fd13/test_coverage :target: https://codeclimate.com/github/maehr/typademic/test_coverage :alt: Test Coverage .. |Maintainability| image:: https://api.codeclimate.com/v1/badges/ea819aa50e494e14fd13/maintainability :target: https://codeclimate.com/github/maehr/typademic/maintainability .. |Requirements Status| image:: https://requires.io/github/maehr/typademic/requirements.svg?branch=master :target: https://requires.io/github/maehr/typademic/requirements/?branch=master .. |PyUp| image:: https://pyup.io/repos/github/maehr/typademic/shield.svg :target: https://pyup.io/repos/github/maehr/typademic/ .. |GitHub issues| image:: https://img.shields.io/github/issues/maehr/typademic.svg :target: https://github.com/maehr/typademic/issues .. |GitHub forks| image:: https://img.shields.io/github/forks/maehr/typademic.svg :target: https://github.com/maehr/typademic/network .. |GitHub stars| image:: https://img.shields.io/github/stars/maehr/typademic.svg :target: https://github.com/maehr/typademic/stargazers .. |GitHub license| image:: https://img.shields.io/github/license/maehr/typademic.svg :target: https://github.com/maehr/typademic/blob/master/LICENSE.rst