Some time ago, while I was working at a small state university, the library was approached by the English department, asking if we knew of some way of putting their biannual student journal online. This publication had been coming out periodically for approximately 15 years and contained essays, poetry, and short stories written by graduate and undergraduate students. Faculty occasionally assigned articles from it as required reading.
As it stood, two print copies had been sent to the library for each issue, one for the periodicals department, and one for the archives. Periodicals do not circulate, meaning that only one copy of each issue was available at a time and only within the library. While, as librarians, we like to encourage visits to the library, the reality remained that accessing the journal was difficult. Many students were also commuters, so forcing them to read it within the library could cause a hardship. For these reasons (not to mention the occasional “migration” of copies out of the stacks), digitization seemed a good response. Being the library techie, I jumped on it.
Theoretically, the entire project could have been done using available CMS software, such as WordPress. However, that issues would be stored in PDF format made this problematic. Uploading articles onto these platforms was possible, but the department had requested that the publication be searchable. Being good catalogers, we knew that the need for controlled metadata held some importance. While that could be handled by existing open source platforms, such as Ambra (used for titles such as PloS), the complexity of installing large packages with limited resources seemed overkill for this project.
I determined that the best (and I confess, more fun) solution was to create a custom system. This not only enabled customization for the specific needs of the English department but would also create a platform that could be used by other departments without much further development.
The public view needed to be easily browsable and searchable. The back end required it to be easy for librarians or others to enter the data. Through discussion with the university archivist, we also determined that it was best if we could create a full digital copy that would satisfy archival standards, including items such as masthead, facing pages, back and front cover, and the like. To be able to include all of these features and maintain usability, I needed to limit what showed publicly, while still maintaining full records of the print item.
Metadata storage was created to include author, type, and subject terms. Other elements such as number of pages, abstract, year, and issue number enabled better results with keyword searching. The articles could either be viewed online or downloaded as a PDF.
To ensure that the IT department was on board with our hosting, I added security features, including restricted access to the administrative area, and enabled administrators to upload images and PDF files securely. As the public view required the ability to see the entire issue, a method was created to choose which article types could remain hidden.
After this project was completed, I realized that this software might be useful for other projects and purposes beyond its original design and beyond the university. Still, the software needed some modification as there were quite a few features that were hard-coded for this specific project. As a result, I created a new system and added many customizable features, for example, handling of name changes, custom main page text, new graphics, and an optional modifiable CSS file. The main point was to design a simple, easy-to-install system for putting periodicals online.
I have released the source code under the name of OPeri. The name is a shortening of “Open Periodical Publishing Platform.” It also is a declension of the Italian word operare, which means to “operate,” “work,” or “carry out,” which I felt was a good representation of a platform that you can “do yourself.” To see a working example, access the source files, or contact me about customization, please visit jsimonconsulting.com/operi.php.