PUBLIC_SVELTE Svelte Themes

Public_svelte

📂 Cấu trúc thư mục

src/
│
├── lib/                     # Code tái sử dụng (không phụ thuộc route)
│   ├── components/           # Component UI (Button, Modal, Navbar...)
│   ├── layouts/              # Layouts chung (MainLayout, AuthLayout...)
│   ├── stores/               # Global state (Svelte store: user, cart...)
│   ├── utils/                # Hàm helper (format date, validate...)
│   ├── services/             # Service gọi API (axios/fetch wrapper)
│   └── styles/               # SCSS/Tailwind global, biến theme
│
├── routes/                   # Routing theo file system (SvelteKit convention)
│   ├── +layout.svelte        # Layout gốc (wrapper toàn app)
│   ├── +layout.ts            # Load data global (vd: check auth, settings)
│   ├── +page.svelte          # Trang chủ (/)
│   ├── about/
│   │   └── +page.svelte      # /about
│   ├── auth/
│   │   ├── login/
│   │   │   ├── +page.svelte  # /auth/login
│   │   │   └── +page.ts      # Logic load/submit login
│   │   └── register/
│   │       └── +page.svelte  # /auth/register
│   ├── dashboard/
│   │   ├── +layout.svelte    # Layout riêng cho dashboard
│   │   └── +page.svelte      # /dashboard
│   └── api/                  # (Optional) API routes (server endpoints)
│       └── users/
│           └── +server.ts    # Ví dụ: GET/POST /api/users
│
├── app.css                   # CSS global
├── app.d.ts                  # Type definition cho SvelteKit
└── app.html                  # Template HTML gốc

📦 Các file cấu hình

svelte.config.js → Config cho SvelteKit (preprocess, alias).

vite.config.js → Config cho Vite bundler (plugin, optimize).

tsconfig.json → Config TypeScript.

.env / .env.production → Biến môi trường (API URL, secrets).

.gitignore → Ignore file không cần push lên Git.

🔑 Alias gợi ý

alias: {
    $components: "./src/lib/components",
    $layouts: "./src/lib/layouts",
    $stores: "./src/lib/stores",
    $utils: "./src/lib/utils",
    $services: "./src/lib/services"
}

Top categories

Loading Svelte Themes