jemdoc is a light text-based markup language designed for creating websites. It takes a text file written with jemdoc markup, an optional configuration file and an optional menu file, and makes static websites
Jemdoc is a light text-based markup language designed for creating websites. It takes a text file written with jemdoc markup, an optional configuration file and an optional menu file, and makes static websites that look something like this one.
This revision to jemdoc seeks to keep this utility tool abreast with modern standards in web development. Since 2007, new technologies and modifications have been made to HTML and CSS. Jemdoc, in its present state lacks some of the features of the HTML5 standard including basic HTML markup such as:
- Semantic HTML tags
- HTML Forms
- Responsive web design
In addition, CSS3 has seen some changes as well. The most important feature concerning styling is the ability to use CSS Preprocessors, that have become common in the web development world.
This revision to jemdoc seeks to keep jemdoc abreast with these changes
The first issue change in this version of jemdoc was stripping away the configuration setup the user had to manually make to start using jemdoc as described here. The only requirement now is for the user to have a python 2.7 interpreter and
pip2 available on his system. Follow the installation to get started with jemdoc.
Secondly, jemdoc now uses MathJax for mathematical equation rendering, instead of traditional Latex. Consequently, mathematical equations are no longer images on the generated HTML page and there is no need for the user to download or support Latex on his system.
This version of jemdoc takes a mobile-first approach to websites. With this approach in mind, the webpages generated by jemdoc are responsive to varying viewports and hence devices used to view the webpages. This improves the accessibility of jemdoc generated webpages on a plethora of devices.
In conjuction with the mobile-first approach, HTML5 introduced the idea of semantic tags. This project embraces semantic HTML5 tags as opposed to generic
Over the course of the years, CSS preprocessors have arisen, introducing programming languge features such as variables to CSS stylesheets. This version of jemdoc supports three CSS preprocessors namely: SCSS, SASS and LESS. This gives users more flexibillity in styling their webpages.
Additionally, the original version of jemdoc lacked core HTML tags including
<video> tags. Now, these are available with jemdoc and users can embedded audio and video elements in jemdoc and create forms to receive input from users.
The possiblity most important feature in this version of jemdoc is the ability to create HTML classes and ids in
.jemdoc files. This version of jemdoc takes a less opinionated approach in generating HTML webpages and gives some degree of freedom to the user. Moreover, the ability to add HTML classes and ids gives fine grained control over the styling of specific elements in the generated HTML page.
To install, make sure you have a python 2.7.* interpreter available on your laptop. Download it here if needed.
Execute the following command in the console to download the jemdoc:
pip install jemdoc
To be provided soon
Building source with
A Makefile has been provided for anyone that wants to build the source documents from scratch locally. The following commands serves as a guide for using the Makefile, assuming the user is currently at the root of whatever directory the user decides to build the project in
Please use `make <target>' where <target> is one of clean to remove build files clean-pyc to remove .pyc files build to build the project for distribution install to install the project locally create-env to initialize project in a virtual environment in the current working directory init to download project dependencies from requirements.txt
This work is the extension of the original jemdoc created by Jacob Mattingley. As the original project was under a GNU license, this has been put under the same license. For more detail concerning the license, click here
Please use the GitHub issue tracker to submit bugs and/or feature requests
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.