Building Beautiful Academic Journals: Theme Development in OJS 3.5
LESS compilation, Smarty templates, and the ThemePlugin API
Abstract
The visual design of an academic journal significantly influences reader perception, submission rates, and overall journal prestige. OJS 3.5 introduced a substantially improved theme architecture that gives developers fine-grained control over every aspect of a journal's appearance — from typography and colour tokens to responsive layouts and accessibility compliance.
This article provides a comprehensive guide to OJS theme development using the ThemePlugin PHP class, LESS CSS preprocessing, and Smarty template overrides. We document the complete lifecycle of a theme: from registering design options via addOption(), through injecting LESS variables via modifyStyle(), to delivering pixel-perfect Smarty templates that honour all OJS structural requirements (.pkp_structure_page, .pkp_structure_head, .pkp_structure_content).
We present the Aurelia theme — OJSPlus's flagship design — as a worked case study. Aurelia draws on Oxford Academic's restrained authority: a navy masthead, teal accent, Source Serif 4 for headings, and Hanken Grotesk for body copy. The result is a theme that feels simultaneously scholarly and modern, suitable for humanities and STEM journals alike.