Skip to content

jlumpe/pyorg-flask

Folders and files

NameName
Last commit message
Last commit date
Jul 15, 2019
Sep 7, 2019
Jul 15, 2019
Apr 30, 2019
Apr 30, 2019
May 1, 2019
Apr 30, 2019
Jul 2, 2019
Jan 30, 2020
May 17, 2019
Jul 17, 2020
Jul 1, 2019
Jul 2, 2019
Jul 2, 2019

Repository files navigation

pyorg-flask

Simple web app based on the Flask and pyorg packages that lets you view your Org mode files in fancy HTML.

Screenshots

Browse through your org directory:

directory

View an org file:

Markup and blocks

Most document elements are already supported:

Lists and tables

Links and images

Todos

Features

  • Org files are read when you load the page, no need for manual exporting/publishing
  • Uses data exported from Emacs using ox-json instead of parsing the raw .org file, so all your customizations in init.el should work
  • Serve files in your org directory, so file links and inline images work
  • Click headlines to open in Emacs
  • Fancy CSS based on Read the Docs
  • LaTeX math with MathJax
  • Extensible

Supported Org document elements

  • Text formatting: bold, italic, code, etc.
  • Quote, example, center, verse blocks
  • Ordered, unordered, description lists
    • Checkboxes
  • Special symbols (entities), LaTeX
  • External links, file links
  • Src blocks with results
  • Tags, TODOs, priorities in headlines

In-progress

  • Agenda view
  • Internal links, to headlines or radio targets
  • Links to headlines in other files

Planned

  • Footnotes
  • Figure and table captions
  • Customizable TODO keyword and tag colors
  • Cache file data so it isn't re-exported on every page load
  • Indexing/searching files
  • Plugin system for HTML conversion, to support Org mode extension packages

Installation

Prerequisites

Install the ox-json Emacs package and pyorg Python package.

Build front end assets

npm install
npm run  build

Install the package

git clone https://github.com/jlumpe/pyorg-flask
cd pyorg-flask
python setup.py install

Running the app

First, start the Emacs server with (server-start). Then run

pyorg-flask run

and navigate to http://localhost:5000