src/
├── app/ # Applcation core logic & services (Auth)
├── assets/ # Static files like images, fonts, etc.
├── components/ # Reusable UI components
│ ├── ui/ # Shared UI components (Button, Input, Modal, etc.)
│ ├── common/ # Common components (ErrorBoundary, Loading/Suspense, etc.)
│ ├── pages/ # Content Page UI components. Components (Dashboard UI, Content UI etc.)
│ └── layout/ # App Layout components (NavBar, Sidebar)
│ │ └─ sidebar/ # Sidebar components
│ │ └─ sections/ # Sidebar inner components
│ └──
├── config/ # Configuration files, constants, theme
├── features/ # Feature-based modules
│ ├── auth/ # Example feature
│ │ ├── components/
│ │ ├── services/
│ │ ├── hooks/
│ │ └── types/
├── hooks/ # Custom React hooks
├── lib/ # Third-party library configurations
├── pages/ # Page components (for routing)
├── services/ # API services and data fetching
├── store/ # State management (Recoil/ContextApi)
├── types/ # TypeScript type definitions
├── utils/ # Helper functions and utilities
├── App.tsx # Root component
└── index.tsx # Entry point
Additional root folders:
├── public/ # Static files served directly
├── tests/ # Test files
└── docs/ # Documentation
# Install dependencies in the project root directory
- npm install
# DEVELOPMENT
## For running development while developing
- npm run dev
## For building the dev project locally
- npm run build:dev
## For running the dev build locally
- npm run preview:dev
# PRODUCTION
## For running production
- npm run build:prod
## Running the production build locally
- npm run start |(or)| npm run preview:prod
#1. Create a new branch.
- git branch <branch-name>
- git checkout <branch-name>
#2. Make changes stage and commit through Terminal.
# NOTE:
## When committing code. Checks will run for tests, linting and format.
## Fix the issues or warnings if any and Commit Again.
- git add . |(or)| git add <file-name1> <file-name2> <file-name3>
- git commit -m "commit message"
#3. Push the changes to the branch.
- git push origin <branch-name>
#4. Create a pull request.
#5. Merge the changes to development branch after CI runs all the checks.