- React JS
- Redux Thunk
- Redux Form
- Redux Logger
- Axios
├── Dockerfile
├── docker-compose.yml
├── nginx
│ └── conf
│ └── conf.d
│ └── default.conf
└── src
├── applications
│ ├── actions
│ │ └── LoginAction.js
│ ├── constants
│ │ └── AuthConstants.js
│ ├── reducers
│ │ ├── AuthReducer.js
│ │ └── index.js
│ ├── router
│ │ └── PrivateRouter.js
│ └── store
│ └── index.js
├── assets
│ ├── img
│ │ └── logo.svg
│ └── style
│ ├── auth.css
│ └── bootstrap.css
├── containers
│ ├── AppContainer.js
│ └── AuthContainer.js
├── elements
│ ├── Form
│ │ ├── Button.js
│ │ └── Label.js
│ └── ReduxFormFields
│ └── TextField.js
├── helpers
│ ├── api.js
│ ├── history.js
│ └── url.js
├── index.html
├── index.js
└── passenger
├── Auth
│ ├── Login
│ │ ├── LoginForm.js
│ │ ├── LoginFormValidation.js
│ │ └── index.js
│ ├── Logout
│ │ └── index.js
│ ├── Register
│ │ ├── RegisterForm.js
│ │ ├── RegisterFormValidation.js
│ │ └── index.js
│ ├── brand.js
│ ├── footer.js
│ └── index.js
└── Layouts
├── About
│ └── index.js
├── Home
│ └── index.js
└── index.js
I don't know what your project needs, I just try to create a case study to discuss that what project structure is. I don't want to misunderstand. Actually as you said, the point is what project needs. For example our modules of the project seperately run and they don't exactly know each other. Each module can easily run by just using its own code base like micro-services.