@@ -101,6 +101,72 @@ This action is required because of cookie policy, once you have done this you sh
101101
102102Try closing and re-opening your development environment or console to refresh its cached system config.
103103
104+ ## 📂 Project Structure
105+
106+ ```
107+ .changestes/ # Versioning and changelog automation
108+ .github/ # GitHub workflows
109+ e2e/ # End-to-end tests (Playwright)
110+ patches/ # Manual patches to npm dependencies (used with patch-package)
111+ static/ # Public assets served directly (e.g., images, icons)
112+ src/ # Application source code
113+ ├── lib/ # Shared modules and utilities
114+ │ ├── api/ # API clients
115+ │ │ └── internal/ # Autogenerated API client (DO NOT EDIT MANUALLY)
116+ │ ├── components/ # UI components
117+ │ │ ├── metadata/ # Meta helpers for SEO and accessibility
118+ │ │ ├── svg/ # Customizable SVG icons
119+ │ │ └── ui/ # Shadcn UI components (Do not add custom components here)
120+ │ ├── constants/ # Global constants
121+ │ ├── errorhandling/ # Error handling utilities
122+ │ ├── hooks/ # Svelte hooks
123+ │ ├── inputvalidation/ # Input validators for usage with input fields
124+ │ ├── signalr/ # SignalR real-time communication logic
125+ │ ├── stores/ # Svelte stores for global state management
126+ │ ├── typeguards/ # Type guard helpers for runtime type checking
127+ │ ├── types/ # Global TypeScript types
128+ │ └── utils/ # General utilities
129+ ├── params/ # SvelteKit route parameter matchers
130+ ├── routes/ # Application routes (file-based routing)
131+ │ ├── (authenticated)/ # Protected routes (everything under this folder requires authentication)
132+ │ │ └── +layout.svelte # Authentication boundary and layout
133+ │ ├── +error.svelte # Global error fallback
134+ │ └── +layout.svelte # Root layout and entrypoint
135+ ├── app.css # Global styles
136+ ├── app.d.ts # Global type declarations
137+ └── app.html # HTML root template
138+ └── error.html # Fallback HTML error page (for critical errors)
139+ ```
140+
141+ ## Configuration files
142+
143+ ### 📦 Node & pnpm
144+
145+ - ` .npmrc ` — npm configuration.
146+ - ` .nvmrc ` — Node.js version manager file.
147+ - ` package.json ` , ` pnpm-lock.yaml ` — Project dependencies and lockfile.
148+
149+ ### ⚙️ Configuration & Tooling
150+
151+ - ` .editorconfig ` — Editor formatting consistency across IDEs.
152+ - ` .prettierrc ` , ` .prettierignore ` — Code formatting rules (Prettier).
153+ - ` eslint.config.js ` , ` .eslintrc ` , ` .eslintignore ` — Linting setup (ESLint).
154+ - ` tsconfig.json ` — TypeScript compiler configuration.
155+ - ` vite.config.ts ` — Vite bundler config.
156+ - ` svelte.config.js ` — SvelteKit configuration.
157+ - ` components.json ` — Component metadata for shadcn.
158+ - ` openapitools.json ` — Codegen config from OpenAPI spec.
159+ - ` playwright.config.ts ` — End-to-end testing configuration (Playwright).
160+
161+ ### 🌐 Environment Variables
162+
163+ - ` .env ` , ` .env.development ` , ` .env.production ` , ` .env.test ` — Environment-specific config files (e.g., API keys, endpoints).
164+
165+ ### 🐳 Containerization
166+
167+ - ` Dockerfile ` — Container definition for deployment or local dev.
168+ - ` .dockerignore ` — Files to exclude from Docker build context.
169+
104170## Support
105171
106172You can support the openshock dev team here: [ Sponsor OpenShock] ( https://github.com/sponsors/OpenShock )
0 commit comments