Skip to content

Proposal: Migrate New Theatre Website from Jekyll to Nuxt #137

@MattA-Official

Description

@MattA-Official

Introduction

This proposal outlines the benefits and steps involved in migrating the New Theatre website from Jekyll to Nuxt. Nuxt offers a more robust and scalable solution for building modern web applications, and this migration will enhance the website's performance, user experience, and maintainability.

Benefits

  • An enhanced user experience by bringing the website in line with WCAG.
  • Better maintainability by using a component-based architecture. Leveraging MDC can allow for more accessible maintenance for non-programmers.
  • A more modern workflow as Nuxt leverages Vue.js, instead of relying on Ruby-based Jekyll, which has not been improved since late 2022.
  • Replacing forestry.io as it's no longer maintained!

Migration Process

  1. Content Migration:
    • Existing content from Jekyll/Forestry will be migrated to Nuxt Content, a git-based content management system specifically built for Nuxt.js.
  2. Front-end Re-Build:
    • The website's front-end will be rebuilt using Nuxt.js components and templates. This allows for a more modular and reusable structure.
    • This would also give us an opportunity to give the website a more ‘modern’ look/feel while still staying true to the purple and orange branding
  3. Data Integration:
    • Existing APIs (including external content sources) such as google calendar integration can be rebuilt.
  4. Testing & Deployment:
    • The website will be tested on a variety of browsers (incl. mobile etc,.)
    • Once testing is complete the website can be deployed using the existing github pages setup

Timeline

I can’t provide an estimate for how long this will take at this stage - but it will depend on how soon we get started, and how many people are interested in being involved. Hopefully once started this would not take more than a few months.

Next Steps

The committee should discuss this. (Yeah I sort of gave up with writing at this point)

Additional Considerations

Possibly use Nuxt Studio, or another compatible CMS dashboard to make content easier to update and manage who is responsible for keeping each area of the site up-to-date.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions