- Simplified skills section: reduced from 15 to 10 items, added performance optimization and toolchain expertise - Refactored project descriptions: focused on business value and key achievements over technical details - Enhanced readability: added bold formatting to highlight key metrics and technologies - Added comprehensive background notes in project files for interview preparation - Created CLAUDE.md for future Claude Code instances Key improvements: - GuiiAI: emphasized hackathon win, early market entry, and engineering challenges - NuistShare: highlighted 10s→0.5s optimization and Lighthouse 97 score - Mihome: stressed sole responsibility for overseas markets and RTL adaptation - Maiqu: showcased team leadership and agile development practices 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
104 lines
5.0 KiB
Markdown
104 lines
5.0 KiB
Markdown
# CLAUDE.md
|
|
|
|
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
|
|
|
|
## Project Overview
|
|
|
|
This is a personal CV/resume repository using Typst, a modern typesetting system. The project uses the `brilliant-cv` template (v3.1.2) to generate professional CVs in multiple languages (primarily Chinese with English support).
|
|
|
|
**Beyond CV generation**, this repository also serves as a workspace for career planning and job search preparation, including interview retrospectives, career reflection documents, and job hunting strategy materials.
|
|
|
|
## Build Commands
|
|
|
|
### Generate PDF
|
|
```bash
|
|
typst compile cv.typ
|
|
```
|
|
|
|
This compiles the main CV file and outputs `cv.pdf`.
|
|
|
|
### Generate AI Prompt (if Python is available)
|
|
```bash
|
|
python decorate_prompt.py
|
|
# or
|
|
python3 decorate_prompt.py
|
|
```
|
|
|
|
This script reads `prompt.md` and injects CV content from the `modules_zh` directory (note: the script references `modules_zh` but the actual directory is `zh/`), generating a final prompt file in `./dist/final_prompt.md`.
|
|
|
|
## Project Structure
|
|
|
|
### Core Files
|
|
- `cv.typ` - Main entry point that imports all CV modules
|
|
- `metadata.toml` - Configuration file containing personal info, layout settings, fonts, and language-specific content
|
|
- `prompt.md` - Template for AI interview preparation prompts
|
|
- `decorate_prompt.py` - Script to generate interview preparation materials
|
|
|
|
### Content Directories
|
|
- `zh/` - Chinese language CV modules (education, skills, career, projects, activity, achievements)
|
|
- `src/` - Assets directory containing avatar photo, logos, and signature
|
|
- `src/projects/` - Individual project description files
|
|
|
|
### Module Files (in `zh/`)
|
|
- `education.typ` - Educational background
|
|
- `skills.typ` - Technical skills organized by category (Full-stack Development, Data Analysis & Deep Learning, Other)
|
|
- `career.typ` - Work experience
|
|
- `projects.typ` - Project experience (includes individual project files from `projects/` subdirectory)
|
|
- `activity.typ` - Activities and community involvement
|
|
- `achievements.typ` - Awards and achievements
|
|
|
|
## Architecture Notes
|
|
|
|
### Typst Module System
|
|
The CV uses a modular architecture where `cv.typ` imports the `brilliant-cv` template and then includes individual module files using the `importModules` function. Each module file:
|
|
1. Imports necessary components from `brilliant-cv` (`cvEntry`, `cvSection`, etc.)
|
|
2. Loads metadata from `../metadata.toml`
|
|
3. Defines its content using the template's components
|
|
|
|
### Metadata Configuration
|
|
The `metadata.toml` file controls:
|
|
- Language selection (currently set to "zh")
|
|
- Layout settings (colors, spacing, fonts, header/footer alignment)
|
|
- Personal information and contact details
|
|
- Language-specific text (header quotes, footer text)
|
|
- Feature flags (AI prompt injection, keyword injection)
|
|
|
|
### Project Files Organization
|
|
Project descriptions are split into individual files under `zh/projects/` (e.g., `guiiai.typ`, `nuistshare.typ`, `maiqu.typ`, `mihome.typ`) and included in `zh/projects.typ` using `#include` statements.
|
|
|
|
### Bilingual Support
|
|
The repository maintains both Chinese (`zh/`) and English content structures, though the primary language is Chinese. The `metadata.toml` supports multiple languages (en, fr, zh, it) with language-specific quotes and footer text.
|
|
|
|
## Important Context
|
|
|
|
This CV is for a graduate student (Hanwen Yu / 余翰文) with experience in:
|
|
- Full-stack development (Vue, React Native, TypeScript, Python)
|
|
- Data analysis and deep learning (PyTorch, Pandas, computer vision)
|
|
- Internships at Xiaomi, Maiqu, and Haiweisi
|
|
|
|
The `prompt.md` file contains interview preparation context noting specific weaknesses in algorithm questions, React knowledge, and the GuiiAI project's limitations.
|
|
|
|
## File Modification Guidelines
|
|
|
|
When editing CV content:
|
|
1. Modify the appropriate module file in `zh/` directory
|
|
2. For project changes, edit individual files in `zh/projects/`
|
|
3. For personal info or layout changes, edit `metadata.toml`
|
|
4. After changes, recompile with `typst compile cv.typ` to generate updated PDF
|
|
|
|
When adding new projects:
|
|
1. Create a new `.typ` file in `zh/projects/`
|
|
2. Add an `#include` statement in `zh/projects.typ`
|
|
3. Follow the existing format using `cvEntry` component with logo, title, society, date, location, and description
|
|
|
|
## Career Planning and Job Search Support
|
|
|
|
This repository is also used for career planning and job search preparation beyond CV generation. When working on career-related tasks:
|
|
|
|
- Career retrospective documents may be created to analyze interview experiences and identify areas for improvement
|
|
- Job search strategy materials and preparation notes may be stored here
|
|
- Interview preparation content is already present in `prompt.md`, which outlines specific technical weaknesses and interview challenges
|
|
- Documents may be in Chinese or English depending on context
|
|
|
|
When assisting with career planning tasks, consider the context from `prompt.md` which identifies key areas needing attention: algorithm practice, React/JavaScript fundamentals, and project deep-dive preparation.
|