Folder Structure
StrikingDash folder organized according to their purpose, this section will give you an overview of specific folder and their role in application.
As it's bootstraped using CRA `src` contains all our application code
Components
This folder contains all the available & re-useable UI components. For example, buttons, table, charts etc

Config
As the name suggest, this folder contains configuration options for the whole project, including theming, api, data service (RESTful client) etc

Container
This theme usages Container-Component architecture. Container folder contains all the container, which could be treated as individual page of website.
To know more https://medium.com/@dan_abramov/smart-and-dumb-components-7ca2f9a7c7d0

DemoData
This is self explanatory, it contains demo data

Hooks
This folder contains the custom react hooks

Layout
Layout folder contains layout components such menu, adminLayout etc

Redux
Important folder, this folder is for managing state of the whole application, StrikingDash uses Redux thus the name.
This folder contains some sub folders that encapsulates redux logic of specific feature.More on state in later section.

State
As mentioned before redux has been used as state management solution with redux-thunk for side-effects.
Every feature is organized in a folder containing three fundamental atomic part of redux flow as three separate file: actions, reducer, actionCreators for better structure.
For asynchronous state operations, well opinionated three actions model has been used. And the actions consist of [state]\_BEGIN,[state]\_SUCCESS,[state]\_FAILED.
For reference https://blog.logrocket.com/managing-asynchronous-actions-in-redux-1bc7d28a00c6/
env
.env file usually contains sensitive data of your application such API key, app secret, or other environment specific setting.
To know more https://create-react-app.dev/docs/adding-custom-environment-variables/
Routes
For routing react-router https://reactrouter.com/ has been used. This folder contains all the application routes

Static
All the static assets such as images, fonts, icons, css files are in this folder

Utility
Utility folder should have utility function such as localStorage control, different data manipulation functions etc
