-
Workspace is a minimal yet production ready web application.
-
It is created to demonstrate and also learn designing production ready MVPs (Minimal viable product).
-
It follows S.O.L.I.D design priciples.
- The backend of the application is designed using Express Nodejs framework.
- It's designed using MVC (Modal-View-Controller) design pattern.
- MongoDB Atlas is used for application's database.
- PassportJs + JWT for user authentication.
- Bcrypt for hashing.
- Http-status for http status codes.
- Cors for enabling cross origin resource sharing.
- Mongoose as the ORM for MongoDB.
- Epress rate limit for rate limiting failed requests.
- Helmet for adding or removing HTTP headers to comply with web security standards.
- Cookie parser for parsing cookies.
- Dotenv for loading environment variables from a .env file into process.env.
-
The UI of the application is designed using Reactjs framework.
-
It uses Layered & Flux architecture for the app's design.
-
Redux + Redux toolkit for global state management.
-
React Query with Axios for data fetching and caching on the client side.
-
MUI for react custome components.
-
Yup with Formik for form validation.
-
Redux Toolkit Persist for persisting the Redux state between page refreshes and application restarts.
Note: The backend is hosted on a free tier of Render so the server goes to sleep after a period of inactivity. So, for the first login or signup, please wait a while for the server to restart.
Folders and files
| Name | Name | Last commit date | ||
|---|---|---|---|---|
