The objective of this discussion is to expose you to some of the popular frameworks that are built on top of JavaScript or React. The goal is not for you to know how to use these, but simply understand what their intended usage is in case you want to use it at some point in time.
For each of these, I want you to answer the following questions for the class:
- Why does this exist? Why did people spend hundreds of hours of their time to build this?
- For what types of projects would you use this for?
- Gatsby
- Storybook
- Svelte
- i18n.js
- MathJax / KaTeX
- D3.js
- Formik
- react-hotkeys
- Frontity
- React Query
- Redux
lina abumahfood, Wajd al-kayyali, Sanad alshobaki, Rama alzeer
1- Gatsby
Used to generate static websites and provides excellent performance and SEO benefits.
Projects: content website, e-commerce, Portfolio Websites also for Documentation.
2- Storybook:
A development environment for UI components. It creates and tests UI components in isolation, making it easier to maintain and share design systems.
Projects: drawing UI sketches, Component Library Development also for UI documentation.
3- Svelte
A JavaScript framework people are using it for its simplicity and performance, as it doesn't require a virtual DOM.
Projects: Single-Page Applications and SSR (Apps with Server-Side Rendering)
4- i18n.js
A library that allows us to have websites for different languages and regions.
Projects: multilingual websites.
5- MathJax / KaTeX
libraries exist to render mathematical equations.
Projects: E-learning websites: University websites.
6- D3.js
Stand for Data-Driven Documents. A free, open-source JavaScript library for visualizing data.
Projects: Dynamic dashboards, Data maps, KPIs dashboards.
7- Formik
Formik is a library for building forms in React.
projects: sign up form, sign in form.
8- React-hotkeys
A JavaScript library for handling keyboard shortcuts and keybindings in React applications.
Projects: text editor, video player in general any web applications with a lot of data or complex interfaces.
9- Frontity
A framework for building headless WordPress sites with React.
Projects: headless CMS. (Content Manegment System) and API Documentation.
10- React Query
A library used to simplify the process of fetching, caching, updating, and synchronizing data with your API.
Projects: To do list apps, weather apps.
11- Redux
is a state management library for JavaScript applications. People use it for managing complex application states and enabling predictable data flow.
Projects: real-time chat apps.