# eauth-console **Repository Path**: efucloud/eauth-console ## Basic Information - **Project Name**: eauth-console - **Description**: No description available - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-09-16 - **Last Updated**: 2026-09-16 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # EAuth Console [English](./README.en.md) | [中文](./README.md) EAuth Console is the web interface for the [EAuth](https://github.com/efucloud/eauth) unified authentication platform. It provides login and authorization flows, user and application management, external identity-provider configuration, and personal security settings. > This repository contains frontend code only. The backend service, container images, and Kubernetes manifests are maintained in [efucloud/eauth](https://github.com/efucloud/eauth). ## Features - Username, email, phone-number, and face-recognition login - OAuth 2.0 / OpenID Connect authorization and callback pages - External OIDC identity-provider configuration - User, application, and redirect-URI management - MFA, profile, and password settings - Authentication analytics dashboard - Chinese and English UI with role-based page access ## Tech Stack - React 18 - TypeScript - Umi Max 4 - Ant Design 5 / Ant Design Pro Components - npm (the only supported package manager) ## Local Development ### Requirements - Node.js 22 or later - npm 10 or later - An [EAuth backend](https://github.com/efucloud/eauth) running at `http://localhost:9001` ### Start the Development Server ```bash git clone https://github.com/efucloud/eauth-console.git cd eauth-console npm ci --legacy-peer-deps npm run start:dev ``` Open `http://localhost:8000`. The development server proxies these paths to the backend: - `/api` - `/public` - `/face-recognition` - `/.well-known/openid-configuration` Proxy targets are configured in [`config/proxy.ts`](./config/proxy.ts). Update that file and restart the development server if the backend is not available at `http://localhost:9001`. ### Default Administrator The backend creates this administrator on first startup: - Username: `admin` - Password: `EfuCloud` Change the default password before deploying to production. ## Commands | Command | Description | | ----------------------- | ------------------------------------------ | | `npm run start:dev` | Start the development server without mocks | | `npm run build` | Build production assets into `dist/` | | `npm run preview` | Build and preview the application locally | | `npm run lint` | Run ESLint and Prettier checks | | `npm run tsc` | Run TypeScript type checking | | `npm test` | Run Jest tests | | `npm run test:coverage` | Run tests with coverage | ## Production Build and Deployment ```bash npm ci --legacy-peer-deps npm run build ``` The output is written to `dist/` and can be hosted by any static web server. The production web server must: 1. Enable SPA fallback so unmatched page routes return `index.html`. 2. Reverse-proxy `/api/`, `/public/`, `/face-recognition/`, and `/.well-known/openid-configuration` to the EAuth backend. 3. Use HTTPS, especially when face recognition or OAuth/OIDC callbacks are enabled. `Dockerfile.local` packages an existing `dist/` directory into an Nginx image; it does not build the frontend inside the image: ```bash npm run build docker build -f Dockerfile.local -t eauth-console:local . ``` For a complete Nginx configuration and Kubernetes example, see [`docs/frontend.yaml`](https://github.com/efucloud/eauth/blob/main/docs/frontend.yaml) in the backend repository. ## Project Layout ```text config/ Umi configuration, routes, and development proxy public/ Static assets src/components/ Shared components src/locales/ Chinese and English translations src/pages/ Pages and authorization flows src/services/ Backend API clients and types ``` ## Related Projects - Backend: [efucloud/eauth](https://github.com/efucloud/eauth) - Deployment: [EAuth Kubernetes Deployment Guide](https://github.com/efucloud/eauth/blob/main/docs/README.en.md) ## License Licensed under the [Apache License 2.0](./LICENSE).