Based on
Client
Hybridplate’s client was initiating using the latest react-boilerplate version (v4.0.0), which uses react v16.8.6. Some of the libraries used within our client include:
- redux (v4.0.1) - used as a state management library;
- redux-saga (v.1.0.2) - an intuitive Redux side effect manager. (i.e. asynchronous tasks, such as data fetching);
- lodash (v4.17.2) - a modern Javascript utility library that delivers modularity, performance, and extras;
- moment (v2.29.1) - a date library for parsing, validating, manipulating, and formatting dates;
- react-hook-form (v5.2.0) - performant, flexible and extensible forms with easy to use validation;
- react-redux (v7.2.0) - official React bindings for Redux;
- react-router-dom (v5.2.0) - DOM bindings for React Router;
- socket.io-client (v2.3.0) - a wrapper around the WebSocket API;
- styled-components (v4.2.0) - a powerful component library of visual primitives that enables quick building of modern web apps for the component age;
- yup (v0.28.3) - a schema builder for value parsing and validation.
Server
Express.js framework is used as server core (v4.17.1). Some of the libraries that are used in our server:
- jsonwebtoken (v8.5.1) - allows us to decode, verify and generate JWT;
- sendgrid (v7.4.2) - Twilio SendGrid NodeJS mail service;
- bcrypt (v5.0.0) - a library to help you hash passwords;
- bcryptjs (v2.4.3) - optimized bcrypt in JavaScript with zero dependencies;
- mongoose (v5.7.5) - is a MongoDB object modeling tool designed to work in an asynchronous environment;
- socket.io (v2.3.0) - Socket.IO server;
- socketio-jwt (v4.5.0) - authenticates socket.io incoming connections with JWTs.
Admin
The admin CMS panel was implemented using the Hybridplate client. Most of the packages are the same. Please refer to the client section for more information.