# CLAUDE.md This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository. ## Project Overview This is a Vue 3 + TypeScript frontend application for an AI Online Judge (OJ) platform called "AI OJ By MeowRain". The application uses modern Vue 3 patterns with Composition API and includes a comprehensive authentication and permission system. ## Development Commands ### Environment Setup - **Package Manager**: Uses `bun` (evidenced by bun.lock file) - **Development Server**: `npm run dev` (runs on port 3000, opens browser automatically) - **Production Development**: `npm run dev:prod` (development mode with production environment config) ### Building - **Development Build**: `npm run build` (builds with development environment) - **Production Build**: `npm run build:prod` (builds with production environment) - **Preview**: `npm run preview` (preview built application) ### Code Quality - **Type Checking**: `npm run type-check` (Vue TypeScript compiler check without emit) - **Linting**: `npm run lint` (ESLint for .ts and .vue files) - **Type Generation**: `npm run build:types` (generates TypeScript declaration files) ### Environment Configuration The application uses environment-specific configuration files: - `.env.dev` - Development environment (API: ) - `.env.prod` - Production environment (API: ) - `.env.test` - Test environment ## Architecture Overview ### Technology Stack - **Frontend**: Vue 3 with Composition API (`