2023-06-02 Project Proposal#

Author: @olgabulat

Reviewers#

  • [x] @zackkrida - for previous experience of migrating the project to Nuxt

  • [x] @sarayourfriend - for extensive experience on the frontend

Project summary#

Openverse should migrate from Nuxt 2, which is about to reach end-of-life, to Nuxt 3.

Goals#

Developer experience

Requirements#

  • Openverse should run on Nuxt 3.

  • All the current functionality should work as expected.

  • All the dependencies should be either updated to latest versions that support Nuxt 3 or replaced with the ones that support Nuxt 3.

  • Nuxt app should migrate from node version 16 to the active LTS version 18 (or the current version 20, which will become active LTS on 2023-10-24).

  • (Optional) Nuxt app should migrate to pnpm version 8

Success#

Openverse uses Nuxt 3, the end-users see no regressions, and the developer experience is improved due to faster build times.

Participants and stakeholders#

Lead: @obulat Implementation: @obulat, TBD Stakeholders: Openverse team

Infrastructure#

There should be no infrastructure changes.

Accessibility#

Updating to Nuxt 3 could improve the accessibility for slow internet/low-spec devices by improving the app performance. There should be no changes in terms of accessibility for screen-reader and keyboard users.

Marketing#

We could share a post on Make WordPress about the Nuxt 3 migration.

Required implementation plans#

Frontend implementation plan.