37 lines
719 B
Markdown
37 lines
719 B
Markdown
# UTMS Next.js Frontend Setup
|
|
|
|
## Install
|
|
|
|
```bash
|
|
npm install
|
|
```
|
|
|
|
## Environment
|
|
|
|
Create `.env.local` from `.env.example`:
|
|
|
|
```bash
|
|
NEXT_PUBLIC_API_BASE_URL=http://localhost:9191
|
|
NEXT_PUBLIC_DEFAULT_TENANT=acme
|
|
NEXT_PUBLIC_LOCALE=en
|
|
NEXT_PUBLIC_AUTH_MODE=local
|
|
```
|
|
|
|
## Run
|
|
|
|
```bash
|
|
npm run dev
|
|
```
|
|
|
|
Application opens on:
|
|
|
|
- `http://localhost:3000/login` for sign-in
|
|
- `http://localhost:3000/dashboard` for admin pages
|
|
|
|
## Notes
|
|
|
|
- JWT token and tenant are persisted in localStorage via Zustand.
|
|
- `tenant` and `locale` are kept across refresh.
|
|
- 401 and 403 are handled globally in Axios interceptor with redirect/toast.
|
|
- `LOGIN` errors show backend message directly, including lockout and LDAP provisioning errors.
|