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
Team members: Sara Jouma, Nour Kayyali, Jana AbuHaltam, ( and me :D )
Gatsby: Its a static site generator that simplifies and enhances the development of content-driven websites where content and SEO are important. It could be used for portfolios, e-commerce, and blog websites.
Storybook: Development environment for UI components. It makes it easier for developers to make, test, and showcase individual UI components. It can be used for applications with complex UIs.
Svelte: A framework, that provides an efficient and simple way to build web applications, Svelte can be used to develop small pieces of an interface or whole applications.
i18n.js: A library, used for internationalization and localization, and to facilitate the process of adapting a software application to different languages and regions. Can be used for websites and mobile apps with a global audience.
MathJax / KaTeX: Libraries used to make it easier to display math equations and symbols in a web application. Educational websites, research, and scientific publications.
D3.js: A data visualization library, that helps developers create interactive and dynamic data visualizations using HTML, SVG, and CSS. Used for projects that involve complex data visualizations, such as dashboards, infographics, interactive charts, research etc etc.
Formik: A library that handles forms in React applications. Simplifies form management, validation, and form state handling in React. Can be used in user registration.
react-hotkeys: A library used for handling keyboard shortcuts in React applications. Can be found in many web applications, games, or productivity tools
Frontity: A framework, used to combine the power of WordPress as a content management system with the flexibility and performance of React. Used in projects that rely on WordPress as a CMS, and SEO-dependent web applications, like e-commerce.
React Query: A library, used for managing, caching, and synchronizing server state in React applications. It streamlines data fetching and state management. Used in projects that require real-time data updates, caching, and API interactions, such as social media apps, e-commerce, etc.
Redux: A state management library for JavaScript applications, commonly used with React. It centralizes and manages applications state, making it predictable and easier to debug. Used for stateful applications where you need to manage and synchronize the state across different parts of the application, such as games, e-commerce, and large scale web apps.