Tattoo

Cats

Bass

Cooking

True Colors: A Decade

About Me

An engineer who doesn’t look like one

Photos of me with long hair

I’m a front-end developer, sometimes dabbling in product design and a bit of not-so-serious full-stack work.

I grew up in Chaozhou’s ancient town and now live in Guangzhou. I’ve always been surrounded by Lingnan and Hong Kong culture, and I mostly speak Cantonese and Teochew in daily life.

I’m into being on my own, raising cats, long hair, tattoos, rock & metal, and cooking — all the good stuff.

Learn more >

Recent Blog

Tech Insights, Product Design & Life Musings

Vue Picture Cropper 1.x Released: The Design Philosophy Behind It

Vue Picture Cropper 1.x Released: The Design Philosophy Behind It

During this Spring Festival holiday, I gave the vue-picture-cropper package a major update, mainly to address some long-standing design and engineering issues. Although it's a breaking change, the migration cost for users is low, and there are now more flexible usage patterns (e.g. composables). I also gathered some thoughts while rewriting the source code, and I'd like to share them in this post.

2026/2/24 17:05:02

Open Source Projects

Projects that I created or maintaining

@bassist/release

11
3
4.47k

Simple GitHub release generator.

Toolkit

blackwork

1
8.55k

Blackwork Tattoo style React UI layout (provides a unified interface for websites like my blog).

UI

@iso-639/mapping

2
3.15k

ISO 639 language code mapping toolkit, which can easily help you manage language data.

Toolkit

refresh-token

11
3

The refreshToken scheme and demo based on OAuth 2.0 for Front end developer.

Tutorial

group-buy-calculator

5

A takeaway billing calculator, no need to worry about red envelopes, redemption coupons and other messy reductions, it will automatically calculate the discount ratio to get the final bill.

Online Tool

vite-plugin-banner

113
6
11.25M

A Vite plugin that adds a banner comment to the header of each chunk file.

Bundling

@bassist/tsconfig

11
3
8.58k

Some TSConfig files for working with TypeScript projects.

Configuration

@re-dev/react-truncate

53
8
3.45M

Provides `Truncate`, `MiddleTruncate` and `ShowMore` React components for truncating multi-line spans and adding an ellipsis.

UI

learning-vue3

1.47k
176

Which has been read by more than 2.3 million people, provides basic knowledge points about front-end engineering development, as well as an introductory learning guide for TypeScript, Vue 3, and Pinia.

Tutorial

@bassist/changelog

11
3
6.46k

Simple CHANGELOG generator.

Toolkit

create-preset

47
3
130.57k

Provides the ability to quickly create preset projects.

Scaffold