We are choosing to use TypeScript
over regular JavaScript
as it will allow us to leverage all of JavaScript
’s features while taking advantage of the stronger debugging support and readability of static typing. One of the highlights of TypeScript
is that its features (such as static typing) are entirely optional, meaning that our team can choose to write mostly JavaScript
code, utilizing our existing experience, while taking advantage of TypeScript’s
features when beneficial. While setting up TypeScript
will take a little additional time compared to regular JavaScript, it will ultimately increase our efficiency and productivity.
We chose to use React
due to its excellent selection of third-party libraries, ease-of-use, shallow learning curve, and developer tools/support. Although it is a JavaScript
library, it is completely compatible with TypeScript
. Logistically, it would be advantageous for our team as well since two of our three developers have used it heavily in the past. We will be pairing React
with the Redux
library, which will greatly simplify our React
state management and help increase our code organization. We will also be using the Material-UI
framework, which provides highly configurable components that we can use in our application.