37 lines
869 B
Markdown
37 lines
869 B
Markdown
|
|
# Frontend - Servers Manager
|
||
|
|
|
||
|
|
## Stack
|
||
|
|
- React 19, React Router 7
|
||
|
|
- Axios (withCredentials)
|
||
|
|
- Tailwind (config in `tailwind.config.js`)
|
||
|
|
- react-hot-toast para feedback
|
||
|
|
|
||
|
|
## Configuração
|
||
|
|
Crie `.env` a partir de `.env.example`:
|
||
|
|
```
|
||
|
|
VITE_BACKEND_URL=http://localhost:8080
|
||
|
|
```
|
||
|
|
|
||
|
|
## Rodar
|
||
|
|
```bash
|
||
|
|
yarn install # ou npm install
|
||
|
|
yarn dev # ou npm run dev
|
||
|
|
```
|
||
|
|
Acesse `http://localhost:5173`.
|
||
|
|
|
||
|
|
## Fluxo de login
|
||
|
|
- Página `/login` envia `POST /api/auth/login` com email/senha.
|
||
|
|
- Tokens vêm em cookies (`access_token` e `refresh_token` HttpOnly). Axios usa `withCredentials`.
|
||
|
|
- Após sucesso, redireciona para `/` (ajuste rota/dashboard conforme evoluir).
|
||
|
|
|
||
|
|
## Estrutura
|
||
|
|
- `src/Api.ts`: cliente axios com `withCredentials`.
|
||
|
|
- `src/pages/Login.tsx`: tela de login e toasts.
|
||
|
|
- `src/components/Layout.tsx`: layout base.
|
||
|
|
|
||
|
|
## Build/Lint
|
||
|
|
```bash
|
||
|
|
yarn build
|
||
|
|
yarn lint
|
||
|
|
```
|