Folder Structure


		Spruha/
		├── app/
        |	|-- (components)/
        |	|-- |-- (authenticationlayout)/
        |	|-- |-- |-- authentication/
        |	|-- |-- |-- pages/
        |	|-- |-- └── layout.js
        |	├── |-- (contentlayout)/
        |	|   |-- |-- advancedui/
        |	|   |-- |-- |-- carousels/
        |	|   |-- |-- └── |--page.js
        |	|   |-- └── layout.js
        |	|-- |-- (landinglayout)/
        |	|-- └──- layout.js
        |	|-- api/
        |	|-- favicon.ico
        |	|-- globals.scss
        |	|-- layout.js
        |	|-- not-found.js
        |	|-- page.js
        ├── public/
        |	|-- assets/
        |	|-- next.svg
        |	| vercel.svg
        ├── shared/
        |	|-- data/
        |	|-- firebase/
        |	|-- layout-components/
        |	|-- redux/
		|	|-- showcode/
        |	└── contextapi.js
        ├── eslintrc.json
        ├── .gitignore
        ├── next.config.mjs
        ├── package-lock.json
        ├── package.json
        ├── README.md
        └── jsconfig.json
						  
Folders Description
  • Spruha - NextJs Javascript App-Router Admin Dashboard Template / : Root template folder contain all js, scss, images and other files.
    • app/ : For server-side routing, you can use Next.js's API routes feature.
      • (components)/: A grouping folder for four layouts. The parentheses indicate a grouping, not a route itself.
        • (authenticationlayout)/ : A grouping folder for authentication-related pages.
        • (contentlayout)/ : A grouping folder for components.
        • (ecommercelayout)/ : A grouping folder for ecommerce components.
        • (landinglayout)/ : A grouping folder for landing pages.
      • api/: Serverless API route to handle contact form submissions.
      • global.scss/ :Global scss file applied to all pages.
      • layout.scss/ : Defines a layout that wraps all pages. Useful for common components like headers or footers.
      • notfound.scss/ :app/not-found handles global unmatched URLs.
      • page.js/ : The root index page component for your application.
    • public/
      • assets/:Stores static assets like images, accessible via /public/assets
    • shared/ :Reusable components and Data files that can be used across multiple pages.
    • eslintrtc.json : ESLint configuration file.
    • gitignore : Specifies intentionally untracked files to ignore.
    • next-config.js : Configuration file for customizing your Next.js setup.
    • package.json : Contains metadata about the project and its dependencies.
    • plugin.d.ts : Declaration file to handle package redeclaration errors.
    • README.md : Project documentation and instructions.
    • tsconfig.json : Javascript configuration file.
  • Creating Routes

    Pages:

    Each folder within the /app directory corresponds to a route. For example:

    • /app/(components)/(contentlayout)/advancedui/accordions&collapse/page.js corresponds to the /accordions&collapse route.
    Nested Routes

    To create nested routes, simply nest folders. For example:

    • /app/(components)/(contentlayout)/advancedui/accordions&collapse/page.js corresponds to the /accordionscollapse route under the content-layout grouping.
    Layouts:
    • layout.js in the /app directory defines a global layout.
    • You can create nested layouts by adding a layout.js file in subdirectories.
    Grouping:
    • Parentheses around a folder name indicate a grouping and do not affect the route structure but help in organizing related routes.