Frontend
Исходный код для frontend Casdoor находится в папке /web: https://github.com/casdoor/casdoor/tree/master/web
Это проект Create-React-App (CRA), который следует классической структуре папок CRA, как описано ниже:
| Файл/Директория | Описание |
|---|---|
| public | Корневой HTML-файл для React |
| src | Исходный код |
| craco.config.js | Файл конфигурации Craco. Здесь вы можете изменить цвет темы (по умолчанию синий) |
| crowdin.yml | Файл конфигурации Crowdin i18n |
| package.json | Файл зависимостей NPM/Yarn |
| yarn.lock | Yarn lock file |
Внутри директории /src вы найдете несколько важных файлов и папок:
| Файл/Директория | Описание |
|---|---|
| account | Страница "Мой профиль" для авторизованных пользователей |
| auth | Весь код, связанный с аутентификацией, такой как OAuth, SAML, страница регистрации, страница входа, страница восстановления пароля и т.д. |
| backend | SDK для вызова API бэкенда Go. Он содержит все вызовы fetch() |
| basic | Домашняя страница (страница панели управления) для Casdoor, которая содержит несколько виджетов-карточек |
| common | Общие UI-виджеты |
| locales | Файлы перевода i18n в формате JSON, синхронизированные с нашим проектом Crowdin: https://crowdin.com/project/casdoor-site |
| App.js | Входной JS-файл, содержащий все маршруты |
| Setting.js | Вспомогательные функции, используемые другим кодом |
| OrganizationListPage.js | Страница со списком организаций, аналогичная всем другим файлам XXXListPage.js |
| OrganizationEditPage.js | Страница для редактирования одной организации, аналогичная всем другим файлам XXXEditPage.js |