Fall 2016 Sprint Report: Theming and Documentation
The participants in the Theming and Documentation group at the Fall 2016 PKP Sprint at the University of New Brunswick included: Carola Fanselow, Michael Felczak, Vanessa Gabler, Roger Gillis, Mike Nason, Kaitlin Newson, Kevin Stranack, Marco Tullney, and Nate Wright. Thanks to all of them for their work!
The goals identified by the group included learning more about how theming works in OJS 3, including the concept of parent and child themes, creating a new theme, and documenting the process to help others create their own themes.
Through the combined efforts of group members, we not only met our goals, but exceeded them! In the two days of the sprint, we were able to:
- Made a good start on 4 themes for OJS 3
- Native Child Theme: http://imgur.com/a/vA031
- Bootstrap Fredericton Theme: https://drive.google.com/drive/folders/0B1ENjk-L8LGbMVVsdldDbUptTTQ
- Bootstrap Scholar Theme: https://drive.google.com/drive/folders/0B1ENjk-L8LGbSmg1VDFuMUpxMlE
- Bootstrap Vancouver Theme: https://drive.google.com/drive/folders/0B1ENjk-L8LGbUXlMcmt0MC14Rjg
- Created some draft documentation on themeing: https://docs.google.com/document/d/1R7k6nk2usKI0LnEWOZwvh4jkpjxGqudfZEOWfKMiUWw/edit
- Created a new Theming Guide in Gitbook (to be the eventual home of the above google doc): https://www.gitbook.com/book/pkp/pkp-theming-guide/details
- Created an OJS 2.x Technical Reference gitbook port from PDF, which will be updated and modified for OJS 3: https://www.gitbook.com/book/pkp/ojs-2-x-technical-reference/details
- Worked on documentation translation workflows with Marco, the PKP translation coordinator
Some of the issues we identified included:
Bootstrap 3 Theme Issues
- Right sidebar width (it’s too wide)
- How to Cite block size and placement and general presentation (might be beyond theming)
- New custom blocks aren’t themed
- View an article as XML mode, the right side seems too wide.
- PDF viewer issues
- Long titles don’t wrap well on phone
Theme API Issues
- Themes need a removeStyle() method so that they can get rid of assets loaded by a parent theme (eg – fonts)
- Regardless of the order in which `modifyStyle` methods are called, any `additionalLessVariables` will be processed AFTER `additionalLess` files. Because the default theme uses `additionalLessVariables` to specify the font, child themes have to use this to override fonts. (For some reason, this doesn’t seem to be a problem with the base color option. The source of this issue needs to be investigated further).
The development team will be reviewing these issues and making the appropriate modifications. We will also continue our work in enhancing the theming capabilities of OJS (and OMP), building and sharing new themes, and encouraging a community of themers to get involved and share their work.
Would you like to help contribute to our community of themers? Do you have ideas for what you’d like to see in a future theme? We’d really like to hear from you, so let us know using the comment box below, or by posting a message in the Features Request section of our community forum.