Technologies

Open Journal Systems (OJS) is a widely-used open-source software for managing and publishing scholarly journals. Developed by the Public Knowledge Project (PKP), OJS incorporates various technologies to ensure efficient journal management, from manuscript submission and peer review to publishing and indexing. Here are the key technologies and components used in OJS:

1. Programming Languages

  • PHP: The core development language for OJS. PHP is used for server-side scripting and is essential for building dynamic web pages and handling database interactions.
  • JavaScript: Used for client-side scripting to enhance user interactivity and interface responsiveness.

2. Database Management

  • MySQL/MariaDB: The primary relational database management systems supported by OJS for storing all journal-related data, including user information, manuscripts, and workflow processes.
  • PostgreSQL: Another supported database option that can be used as an alternative to MySQL/MariaDB.

3. Web Servers

  • Apache: The most commonly used web server for hosting OJS. It is known for its flexibility and widespread support.
  • Nginx: Another web server that can be used with OJS, known for its high performance and efficiency, especially under high load.

4. Operating Systems

  • Linux: The most popular operating system for hosting OJS due to its robustness and compatibility with open-source technologies.
  • Windows and macOS: OJS can also be installed on these operating systems, although they are less commonly used in a production environment compared to Linux.

5. Frameworks and Libraries

  • Smarty: A PHP template engine used by OJS for separating the presentation layer from the application logic.
  • jQuery: A fast, small, and feature-rich JavaScript library included in OJS to simplify HTML document traversal and manipulation, event handling, and animation.
  • Bootstrap: A front-end framework used in newer versions of OJS to ensure responsive design and improve the user interface across various devices and screen sizes.

6. APIs and Integration

  • CrossRef API: Used for Digital Object Identifier (DOI) registration and retrieval, ensuring that articles are properly indexed and linked.
  • ORCID Integration: Allows authors to link their ORCID iDs with their submissions, improving author identification and attribution.
  • LOCKSS and CLOCKSS: Technologies for digital preservation, ensuring long-term access to journal content.
  • Google Scholar: Integration to ensure articles are indexed and discoverable via Google Scholar.

7. Security and Authentication

  • CAPTCHA: Used to prevent automated spam submissions.
  • SSL/TLS: Ensures secure data transmission between users and the server by encrypting the communication.

8. Plugins and Extensions

  • OJS supports a wide range of plugins that extend its functionality, including plugins for payment systems, additional metadata schemas, custom themes, and integration with other scholarly communication tools and services.

9. Version Control and Collaboration

  • Git: Version control system used for OJS development, allowing developers to collaborate, track changes, and manage different versions of the software.

By leveraging these technologies, OJS provides a comprehensive platform for managing the entire lifecycle of scholarly publishing, from submission and peer review to publication and archiving. The combination of open-source technologies ensures flexibility, scalability, and a broad range of functionalities to meet the needs of diverse scholarly communities.