Files
docs/docs/50-developing/03-files.md
T
2026-06-16 15:13:13 +03:00

2.7 KiB

Файловая структура проекта

Фронтенд

Гостевой фронтенд

Располагается в /src/visitor

  • Лендинг на главной странице
  • Страница организатора
  • Страница проекта

Все они имеют уникальный дизайн (на scss), и могут быть быстро изменены

Ограничения

Может обращаться только к common

Клиентский фронтенд

Располагается в /src/client

  • регистрация
  • авторизация
  • личный кабинет
    • создание заявок
  • панель эксперта
  • панель модератора
  • панель админа

Ограничения

Может обращаться только к common


Бэкенд

Располагается в папке /src/server

Ограничения

Может обращаться только к common и client


Общие типы и функции

Располагаются в папке /src/common

Ограничения

Не может обращаться ни к каким другим частям, т.к. является корнем

Демо данные

Располагаются в папке /src/common

Требования:

  • Файл с этими данными должен называться <название>.demo.ts, где <название> - это название типа во множественном числе
  • Переменная с демо данными должна начинаться с demo и иметь вид demo<название>
  • Переменные с вариантами данных одного типа должны начинаться с demo<название> и иметь вид demo<название><название варианта>
  • Если демо данных одного типа больше одного значения, то эти значения располагаются в этом же файле

Рекомендация:

В названии константы указывать её тип (demoEvent: IEvent).

Пример

Пример организации демо данных участников:

/// file: src/demoData/participants.ts

export const demoParticipantBase: IBaseParticipant = { ... }

export const demoParticipantKey: IKeyParticipant = { ... }

export const demoParticipants: IParticipant[] = [
    demoParticipantBase,
    demoParticipantKey,
]