Skip to content

FAQ и Checklist

Вопрос: Для чего нужен schema.ts ?

Ответ: schema.ts — нужен например в Drizzle ORM и только для описания таблиц:

src/lib/server/repo/db/schema.ts
import { pgTable, text, timestamp, uuid } from 'drizzle-orm/pg-core'
export const users = pgTable('users', {
id: uuid('id').primaryKey().defaultRandom(),
email: text('email').unique().notNull(),
name: text('name').notNull(),
passwordHash: text('password_hash').notNull(),
createdAt: timestamp('created_at').defaultNow(),
updatedAt: timestamp('updated_at').defaultNow(),
})

НЕ так:

// ❌ Плохо
export const users = pgTable(...)
export const getUserById = async (id: string) => { ... }

2. Что использовать: controller.ts, state.ts или stores.ts?

Section titled “2. Что использовать: controller.ts, state.ts или stores.ts?”

Ответ: Это одно и то же. Используйте их для реактивной логики


3. Нужен ли index.ts в каждом модуле?

Section titled “3. Нужен ли index.ts в каждом модуле?”

Ответ: да, он обеспечивает централизованный экспорт для публичного API


4. Как организовать папку ui/?

Section titled “4. Как организовать папку ui/?”

Ответ: ui/ — это внутренние UI компоненты модуля:

dashboard/
├── ui/
│ ├── Dashboard.svelte # Главная компонента
│ ├── StatsCard.svelte # Промежуточная компонента
│ └── Toast.svelte # Экспорт функций
│
└── _shared/ # Или shared/ для переиспользуемых компонентов без бизнес логики
└── Button.svelte


Если у вас остались вопросы — создайте issue в репозитории проекта