You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

32 lines
1.5 KiB

# TERACLONE Web UI
이 모듈은 `tera-api`를 위한 서버 렌더링 프론트엔드입니다. 브라우저 로그인 정보를 백엔드 `/api/v1/auth/login`으로 검증하고, HttpOnly 웹 세션을 백엔드 Bearer 토큰으로 변환해 `/api/v1/*` 요청을 프록시합니다.
기본 포트는 `8083`입니다. `8080`은 별도의 `webapp` 정적 UI가 사용합니다.
## 실행
통합 프로젝트 루트의 실행 스크립트를 사용합니다.
```powershell
.\scripts\start-demo.ps1
```
프론트엔드만 실행할 때는 백엔드 주소를 지정합니다.
```powershell
$env:TERACLONE_API_UPSTREAM = "http://127.0.0.1:8082"
$env:TERACLONE_SESSION_UPSTREAM = "http://127.0.0.1:8081"
go run -buildvcs=false ./cmd/server
```
포트 디버그 화면은 `Direct Mode` writer 세션을 생성하고 `TERACLONE_SESSION_UPSTREAM`의 `tera-sessiond` WebSocket으로 연결합니다. 장비에서는 기본값 `http://127.0.0.1:8081`을 사용하므로 별도 설정 없이 실제 CH01~CH48 시리얼 스트림에 연결됩니다.
## API 원칙
- 프론트엔드 기능 요청은 모두 `/api/v1/*`를 사용합니다.
- `/api/status`, `/api/network`, `/api/system`, `/api/logs/*`, `/api/mock/action` 같은 기존 더미 API는 제공하지 않습니다.
- 아직 백엔드와 매핑되지 않은 파일 업로드 화면은 성공을 가장하지 않고 미연결 안내만 표시합니다.
전체 기능 매핑은 프로젝트 루트의 `REQUIREMENTS.md`를 참고하세요.