Ran-Mori/resume

A web-based resume

โ˜… 0Forks 0TypeScriptGitHub โ†—Compare

README

Yi Zheng - Portfolio Website

This is the personal portfolio website for Yi Zheng, a Senior Android Engineer at ByteDance. It acts as a digital resume, showcasing professional experience, technical skills, and featured projects. The site is built with modern web technologies, ensuring a high-performance and responsive user experience.

๐Ÿš€ Tech Stack

๐Ÿ“‚ Project Structure

resume/
โ”œโ”€โ”€ public/          # Static assets (images, etc.)
โ”œโ”€โ”€ src/
โ”‚   โ”œโ”€โ”€ app/         # Next.js App Router pages and layouts
โ”‚   โ”œโ”€โ”€ assets/      # Project-specific assets (logos, etc.)
โ”‚   โ”œโ”€โ”€ components/  # Reusable UI components
โ”‚   โ””โ”€โ”€ lib/         # Data definitions (resume data)
โ”œโ”€โ”€ .gitignore
โ”œโ”€โ”€ next.config.ts
โ”œโ”€โ”€ package.json
โ””โ”€โ”€ tsconfig.json

๐Ÿ› ๏ธ Getting Started

Follow these steps to set up the project locally.

Prerequisites

  • Node.js (Latest LTS version recommended)
  • Package manager (npm, yarn, or pnpm)

Installation

  1. Clone the repository:

    git clone https://github.com/Ran-Mori/resume.git
    cd resume
  2. Install dependencies:

    npm install
    # or
    yarn install
    # or
    pnpm install

Running Locally

Start the development server to view the website:

npm run dev
# or
yarn dev
# or
pnpm dev

Open http://localhost:3000 in your browser.

๐Ÿ“ Scripts

  • npm run dev: Starts the development server with hot-reloading.
  • npm run build: Builds the application for production.
  • npm run start: Starts the production server (requires a build first).
  • `npm run lint`: Runs ESLint to check for code quality issues.

๐Ÿš€ One-Click Deployment

This project includes a shell script for seamless deployment to a remote server (Ubuntu/Debian recommended).

Prerequisites

  • A remote server with SSH access (preferably `root` user).
  • The server's IP address.

Usage

  1. Make the script executable (first time only):

    ```bash chmod +x deploy_remote.sh ```

  2. Run the deployment script:

    ```bash ./deploy_remote.sh <YOUR_SERVER_IP> ```

    Example: ```bash ./deploy_remote.sh 1.2.3.4 ```

    If you don't provide an IP address, the script will prompt you to enter one.

What the Script Does

  1. Syncs Files: Uploads the project code to `/var/www/resume` on the remote server using `rsync`.
  2. Installs Dependencies: Automatically installs Node.js (v20), npm, and PM2 on the server if missing.
  3. Builds the App: Runs `npm install` and `npm run build` on the server.
  4. Starts the Service: Uses PM2 to start the application on port 80 and configures it to restart on boot.

๐Ÿ‘ค Author

Yi Zheng

  • Role: Senior Android Engineer
  • Company: ByteDance (Doubao, Douyin)
  • GitHub: Ran-Mori

๐Ÿ“„ License

ยฉ 2026 Yi Zheng. All rights reserved.

Thanks

Brittany Chiang