React is an open-source library for free to download React.js themes and templates which are highly extensible and ready to use for the developer community.
WHY REACT JS
- Component driven development
- Efficient virtual DOM implementation
- Huge, active community
- Frontend Store / State Management
- Redux:A Functional Programming approach to store management. Data revolves around a unidirectional flow, making the logic of app predictable and easier to understand.
- Mobx/MST: Object Oriented Programming approach to store management which follows Observer-Observable pattern, making it easier to understand and design the store.
- ReactStrap: easy to use React Bootstrap 4 components compatible with React 16+.
- Ant Design: An enterprise-class UI design language and React UI library with a set of high-quality React components, one of best React UI library for enterprises
- Material UI: Material design components for React
- PrimeReact: Extensive UI library with focus on desktop as well as mobile
Other commonly used libraries
- Redux-form: Library to link form-driven UIs with redux state
- styled-components: CSS in JS library which allows developers to easily style React components with CSS syntax
- ESLint : Tool to help maintain code quality by enforcing coding conventions
- Prettier : Code formatter
- create-react-app : quickly generate boilerplate React app with workflows for development and production builds
- Webpack : packager for development builds
- Babel : Compiler for transpiling ECMAScript and JSX code into browser-executable code
- Google Analytics
- Crash Reporting
- Sentry : Open-source and hosted error monitoring that helps software teams discover, triage, and prioritize errors in real-time
CI / CD Deployment Tools
- Travis CI: Hosted continuous integration service used to build and test software projects hosted at GitHub
- Jenkins : Free and open source automation server that helps to automate the non-human part of the software development process
- Circle CI:Continuous Integration and Delivery platform for Linux, macOS
- Manual Testing : We keep a document specific to the project to cover all the testing scenarios and we have a QA dedicated to the project who tests the application in all test scenarios. Automated Testing tools – Jest, Karma