Concept
A coherent site structure for different publishing formats, a typographic layout for enhanced Markdown content, and good legibility on all screen sizes are the essential goals of this theme.
Perplex is an all-purpose theme for technical content. There are templates for three levels of documentation, a news stream, blog postings, author pages, and taxonomy pages. Templates for a distinct start page and articles will follow.
At the moment, the example site included in the theme shows the news section as a start page the same way this documentation does.
Design & Layout
The theme ships with the open-source font family Plex for optimized self-hosting. The design has taken their proportions into account from the beginning to provide a good line length for text and code blocks.
The layout adapts to all screen sizes in a fluid-responsive way. This concept has been around for a while but doesn’t get realized often despite its advantages.
Many proportions can stay fixed between breakpoints beyond mobile and this means:
The viewport is always used at full width when the screen space is limited.
The optimal line length stays fixed on all wider screens beyond mobile.
adjacent columns stay in sync on all larger view-ports. We can order Markdown elements beside each other instead of letting them always flow from top to bottom like a stream.
All text is placed on a baseline grid to introduce a comfortable vertical rhythm and coherence between adjacent text elements. Combined with the fluid-responsive design this allows placing images (and other block elements) in and around the text with high accuracy. There are demos for stand-alone & embedded images, or code blocks.
Usage concept
The theme is as self-sufficient as reasonably possible. Fonts and libraries are included, some libraries for plugins are retrieved from the secure and GDPR-compliant CDN https://jsdelivr.com.
Recent copies of all module dependencies are available in the _vendor folder for an easy start with the theme. No other installations than the extended binary (for WEBP) of a very recent Hugo release and the theme are required.
The installation of a GoLang environment to include the theme as a Hugo module from its repository is certainly more convenient than repeated manual downloads if you want to follow the ongoing development.
Support & development
Should you miss some information in the docs, find a bug in the templates, or have a suggestion, please file an official issue in the repositories (→ Introduction).
There will be no public support channel in the foreseeable future because improving this theme takes all my spare time. Support and collaborative development will only work bidirectional. I will not answer private questions.
In case the theme benefits from contributions and support, I’d love to turn this effort into a community project and change the license holder accordingly to assure, that contributing is never in vain.