> For the complete documentation index, see [llms.txt](https://docs-wieldy.g-axon.work/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs-wieldy.g-axon.work/structure/folder-structure.md).

# Folder Structure

This document outlines a clean and organized folder structure for a Next.js project, centered around the `@wieldy` core system, which provides the foundation for reusable components and utilities.

***

#### Folder Structure:

**WIELDY-4.X**

Root directory of the project.

* **@assets**
  * Contains static assets such as images, icons, and fonts used across the application.
* **@wieldy**
  * **Core Description**: The backbone of the application, offering modular and reusable components for consistent functionality.
  * **components**
    * `WieldyContainer`: Container component for managing layout spacing.
    * `WieldyLayout`: Base layout component for structuring pages.
    * `WieldyTheme`: Theme provider for applying consistent styles.
    * `index.ts`: Entry point for exporting all `@wieldy` components.
  * **utils**
    * Utility functions and helpers to enhance reusability.
* **public**
  * Static files accessible via direct URLs, such as images or static assets.
* **src**
  * **\_components**
    * Shared UI components reused across the project.
  * **\_config**
    * Centralized configuration files for themes, layouts, and application settings.
  * **\_dictionaries**
    * Files supporting multilingual translations and text dictionaries.
  * **\_hooks**
    * Custom React hooks for logic reuse.
  * **\_middleware**
    * Middleware logic for handling routing and API operations.
  * **\_themes**
    * Theme objects, such as dark and light mode configurations.
  * **\_utilities**
    * Helper functions and constants shared throughout the application.
  * **app**
    * Dynamic routes, layouts, and API handlers for the application.
  * **types**
    * TypeScript type definitions to ensure type safety across the project.
* **middleware.ts**
  * Custom middleware logic for advanced request handling.

***

#### Root Files:

* **.eslintrc.json**: Configuration for ESLint to enforce code quality.
* **.prettierrc.json**: Configuration for Prettier to maintain consistent formatting.
* **next.config.mjs**: Configuration file for customizing Next.js behavior.
* **package.json**: Defines project dependencies and scripts.
* **postcss.config.js**: Configuration for PostCSS.
* **README.md**: Project documentation and guidelines.
* **tailwind.config.js**: Tailwind CSS customization file.
* **tsconfig.json**: Configuration file for TypeScript.

***

#### Key Highlights:

* **Scalable**: Modular organization ensures scalability for larger projects.
* **Reusability**: system facilitates consistent and reusable components.
* **Maintainability**: Clear separation of concerns simplifies project maintenance.
