anhuiqiang e92649b612 bug fix 13 giờ trước cách đây
..
.marscode 0702802317 init 4 tuần trước cách đây
components e92649b612 bug fix 13 giờ trước cách đây
constants 8164995420 new version 3 tuần trước cách đây
contexts a310ab3f27 追加评测结果删除功能 1 tuần trước cách đây
public 0702802317 init 4 tuần trước cách đây
services e92649b612 bug fix 13 giờ trước cách đây
src e92649b612 bug fix 13 giờ trước cách đây
utils e92649b612 bug fix 13 giờ trước cách đây
.dockerignore 0702802317 init 4 tuần trước cách đây
.env 664e531d4c 国际化 1 tuần trước cách đây
.env.example 664e531d4c 国际化 1 tuần trước cách đây
.gitignore 0702802317 init 4 tuần trước cách đây
App.tsx 3cdfeda9da AuraK 2.0 NEWUI 3 tuần trước cách đây
Dockerfile 50df79fabb feature 2 tuần trước cách đây
README.md 3cdfeda9da AuraK 2.0 NEWUI 3 tuần trước cách đây
index.css 3cdfeda9da AuraK 2.0 NEWUI 3 tuần trước cách đây
index.html 29c2d54670 2.0 AuraK init 3 tuần trước cách đây
index.tsx c83f9eda43 fix merge errors 1 tuần trước cách đây
metadata.json 0702802317 init 4 tuần trước cách đây
package.json 6f45f9f75e Merge AuraK-improveOrgUserManager into AuraK-3.0 1 tuần trước cách đây
postcss.config.js.bak 3cdfeda9da AuraK 2.0 NEWUI 3 tuần trước cách đây
tailwind.config.js.bak 3cdfeda9da AuraK 2.0 NEWUI 3 tuần trước cách đây
tsconfig.json 0702802317 init 4 tuần trước cách đây
types.ts 182502f907 人才测评智能体 1 tuần trước cách đây
used_keys.txt 0702802317 init 4 tuần trước cách đây
vite.config.ts 202b276dc6 fix build error 1 tuần trước cách đây

README.md

AuraK V2 — Frontend (web)

A modern multi-tenant knowledge base and AI assistant platform built with React 19, Vite, and Tailwind CSS.

🏗️ Architecture

The frontend uses React Router for navigation with a clean role-based routing structure:

Route Access Description
/login Public Password or API Key sign-in
/ All users Workspace overview
/chat All users AI Chat with scope selection
/knowledge All users Document (Knowledge Base) management
/notebooks All users Notebooks and notes
/settings All users Model and app settings
/admin TENANT_ADMIN+ Team management, share approvals
/admin/tenants SUPER_ADMIN Global tenant management
/admin/models TENANT_ADMIN+ Model configuration

🔐 Authentication

The app supports two login methods:

  1. Password login — POST to /api/v1/auth/login, receives an apiKey back
  2. Direct API Key — paste the API key directly

All API calls include x-api-key: <key> in the request headers automatically via services/apiClient.ts.

🛠️ Tech Stack

  • React 19 + TypeScript
  • Vite (dev server + build)
  • TailwindCSS v3 (styling)
  • React Router v6 (routing)
  • framer-motion (animations)
  • Lucide React (icons)
  • clsx + tailwind-merge (cn() utility)

🚀 Quick Start

1. Install dependencies

cd web
yarn install

2. Configure environment

Copy .env.example to .env and set the backend URL if needed:

VITE_API_BASE_URL=http://localhost:13000

The Vite dev server proxies /api/* to http://localhost:13000 by default (see vite.config.ts).

3. Start the dev server

yarn dev
# → http://localhost:13001

4. Build for production

yarn build
# Output: dist/

📁 Project Structure

web/
├── index.tsx              # App root — BrowserRouter + all routes
├── index.html
├── src/
│   ├── contexts/
│   │   └── AuthContext.tsx        # User auth state (apiKey, user, role)
│   ├── components/
│   │   └── layouts/
│   │       ├── WorkspaceLayout.tsx  # Sidebar + header for main workspace
│   │       └── AdminLayout.tsx      # Admin console layout
│   ├── pages/
│   │   ├── auth/
│   │   │   └── Login.tsx            # Dual-mode login (password + API key)
│   │   ├── workspace/
│   │   │   ├── ChatPage.tsx
│   │   │   ├── KnowledgePage.tsx
│   │   │   ├── NotebooksPage.tsx
│   │   │   └── SettingsPage.tsx
│   │   └── admin/
│   │       ├── SuperAdminPage.tsx   # Tenant management (SUPER_ADMIN)
│   │       └── TenantAdminPage.tsx  # Team management (TENANT_ADMIN)
│   └── utils/
│       └── cn.ts                    # clsx + twMerge helper
├── components/            # Legacy rich view components (still used)
│   └── views/
│       ├── ChatView.tsx
│       ├── KnowledgeBaseView.tsx
│       ├── NotebooksView.tsx
│       └── SettingsView.tsx
└── services/              # API service layer
    ├── apiClient.ts       # Base HTTP client (auto-injects x-api-key)
    ├── chatService.ts     # Streaming chat
    ├── knowledgeBaseService.ts
    └── ...

🔑 Default Credentials (Development)

After running the backend migration, a default super admin is seeded:

  • Email: admin@system.local
  • Password: admin123

The /api/v1/auth/api-key endpoint returns your API key after login.

⚠️ Troubleshooting

  • 401 errors: Your session expired. You will be redirected to /login automatically.
  • Upload fails: Ensure the backend is running and the uploads/ directory is writable.
  • No AI response: Configure at least one LLM model in /settings or /admin/models.