This is a bit of a theoretical question to do with the API. I am curious if it would be feasible to run OJS as a headless CMS, with the front-end being rendered separately.
This entails decoupling the content management from the website itself, pulling the relevant data via the API. This is often done using a front-end framework like Gatsby or HUGO to render the website, hosting it using a serverless service like Netlify.
We use this on another of our websites, where we use Forestry to create
.md files which are stored on Github. Then we pull those into Gatsby on Netlify.
The benefits are numerous:
- Increased performance by leveraging CDNs and load balancing in a simple way
- Reducing the attack vectors of the front-end website to near-zero
- Requiring less server resources, as the server isn’t publically accessible
- Other data sources can be easily combined like a Ghost blog or Markdown files.
As I was writing this, I came across a similar topic that discussed a related question about exporting to Markdown:
As was mentioned there, going through the API is the way to do it. So I’m wondering:
Has anyone had any experience rendering OJS articles with a static site generator? Are there other methods and approaches in use?