Frontend
O código-fonte para o frontend do Casdoor está localizado dentro da pasta /web: https://github.com/casdoor/casdoor/tree/master/web
É um projeto Create-React-App (CRA), que segue a estrutura clássica de pastas do CRA conforme descrito abaixo:
| Arquivo/Diretório | Descrição |
|---|---|
| public | O arquivo HTML raiz para o React |
| src | Código-fonte |
| craco.config.js | O arquivo de configuração do Craco. Você pode alterar a cor do tema (azul por padrão) aqui |
| crowdin.yml | Arquivo de configuração i18n do Crowdin |
| package.json | Arquivo de dependência NPM/Yarn |
| yarn.lock | Yarn lock file |
Dentro do diretório /src, você encontrará vários arquivos e pastas importantes:
| Arquivo/Diretório | Descrição |
|---|---|
| account | A página 'Meu perfil' para usuários logados |
| auth | Todo o código relacionado à autenticação, como OAuth, SAML, página de cadastro, página de login, página de esquecer senha, etc. |
| backend | O SDK para chamar a API backend em Go. Contém todas as chamadas fetch() |
| basic | A página inicial (página do painel) para o Casdoor, que contém vários widgets em forma de cartão |
| common | Widgets de UI compartilhados |
| locales | arquivos de tradução i18n em JSON, sincronizados com nosso projeto Crowdin: https://crowdin.com/project/casdoor-site |
| App.js | O arquivo JS de entrada contendo todas as rotas |
| Setting.js | Funções utilitárias usadas por outros códigos |
| OrganizationListPage.js | A página para a lista de organizações, semelhante a todos os outros arquivos XXXListPage.js |
| OrganizationEditPage.js | A página para editar uma organização, semelhante a todos os outros arquivos XXXEditPage.js |