MetaBrainz Foundation

Rewrite the MusicBrainz instruments page in React/JSX

The page that lists instruments on MusicBrainz is pretty simple and currently generated using Template Toolkit. MusicBrainz is on the way to get rid of this template engine, in favour of React/JSX.

The objective of this task is to replace the current template root/instrument/list.tt with an equivalent template written in React/JSX. Here “equivalent” means it should still display a sorted list of instruments grouped by type with name, disambiguation and description. Small UI changes are allowed, but the complete redesign of this page is a separate task.

Requirements:

  • A working development environment, including a MusicBrainz server in standalone mode. (See the documentation for information on how to do this.) Installation should be fairly straightforward to complete, but it could be quite long depending on your computer performance. Note that running the server code is only supported on Linux systems and that you need at least ~20 GB of space to install it.

Steps include:

  1. Create a personal account in the issue tracker, create a task ticket and assign yourself the ticket
  2. Create a branch to rewrite the code (from Perl/Template Toolkit to JavaScript/React/JSX) with style
  3. Test your changes on your local MusicBrainz server and show us a screenshot
  4. Create a pull request to submit your changes
  5. Wait for review and make additional changes if required until approval.

If you have questions, at any step, feel free to ping us on #metabrainz (IRC channel).

Task tags

  • musicbrainz
  • react.js
  • javascript
  • jsx

Students who completed this task

Shamroy Pellew

Task type

  • code Code
  • web Design
close

2017