title: J1
Template tagline: first version is out
categories: [ Knowledge ] tags: [ J1
, Template ]
image: /assets/images/modules/attics/runner-1920x1200.jpg
fam_menu_id: default
regenerate: false
resources: [] resource_options:
- attic: padding_top: 400 padding_bottom: 50 opacity: 0.5 slides: - url: /assets/images/modules/attics/runner-1920x1200.jpg alt: Photo by Alex Holyoake on Unsplash badge: type: unsplash author: Alex Holyoake href: https://unsplash.com/@stairhopper
// Page Initializer // ============================================================================= // Enable the Liquid Preprocessor :page-liquid:
// Set (local) page attributes here // —————————————————————————– // :page–attr: <attr-value> :badges-enabled: false
// Place an excerpt at the most top position // —————————————————————————–
- role=“dropcap”
-
The template system was initially developed to create a simple but fully configurable website creation toolset for document servers. Document servers provide websites or other content formats like PDF, projects, software documentation, or similar approaches.
excerpt__end
// Load Liquid procedures // —————————————————————————– {% capture load_attributes %}themes/{{site.template.name}}/procedures/global/attributes_loader.proc{%endcapture%}
// Load page attributes // —————————————————————————– {% include {{load_attributes}} scope=“global” %}
// Page content // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// Include sub-documents // —————————————————————————–
ifeval::[{badges-enabled} == true] {badge-j1–license} {badge-j1–version-latest} {badge-j1-gh–last-commit} {badge-j1–downloads} endif::[]
Many large today's companies like {url-docker–docs}[Docker, {browser-window–new}] are using template-based systems to create their documentation sites. Or like {url-oreilly-atlas–home}[O'Reilly Atlas, {browser-window–new}], to provide a fully-featured writers platform for writing books or extensive documentation.
All these platforms are technically different, but they share common ideas:
-
the layout of all content (pages) is based on a standard skeleton but separated from the content
-
content is written using a neutral meta-language
-
the final output is not predefined
-
the result is automatically generated by engines (robots)
To make these real, a lot of things are to be managed. You can imagine. The approaches of Docker or O'Reilly points to a possible solution: a template system based on Bootstrap for the CCS framework, Jekyll and Liquid for the core engines, and Asciidoc (Asciidoctor) for a neutral meta-language writing content.
The next thought comes to my mind. Why developing a toolset for only document servers? Documentation webs of today are complex websites. Some features used for general web design may be not needed for documentation systems, but a lot of components are required that are wanted in general:
-
a powerful CSS and Javascript framework
-
a modular approach for dynamic content and apps
-
a configuration system to separate content from the layout and to automate creation processes following the development pattern MVC (blog.codinghorror.com/understanding-model-view-controller/[Model–View–Controller, {browser-window–new}])
A plan was made in 2016, based on
Jekyll
V3 and Bootstrap V3, to create a template-based robot system that can be used for all types of websites, for all standard formats to create digital content.I was too optimistic about how long it would take to build such a system:
-
easy to use by developers and non-technical people
-
modular, powerful and stable
-
supporting modern content design
-
usable on common computer hardware, available to the public
-
less in components, using well-known software
-
entirely usable on small PCs locally as well as on powerful remote systems on the Internet
It took me nearly four years. Now, in early 2021, I can present the first version of
J1
Template for the public. Hopefully, most of the objectives are achieved.Have fun!
-