# React.js

* Status: accepted
* Deciders: Nathan Fiedler
* Date: 2022-12-05

## Context

Nearly all modern web interfaces are based on some framework or another, with
[React.js](https://reactjs.org) being the most popular by far. There are several
reasons for its popularity, chief among them being that it is very
straightforward to use, with a declarative style that matches HTML and yet
enables dynamic behavior without clunky barriers between the visual components
and the business logic. As a byproduct of React's popularity, there are many
available libraries that work well with it.

Alternatives include Vue.js, which is a modern form of jQuery, and hence prone
to producing spaghetti code that is difficult to maintain and debug. Another is
Ember.js, which is notoriously opinionated and developers familiar with it are
hard to find.

## Decision

React.js because of the advantages mentioned earlier.

## Consequence

None as yet.
