Blog

Animated PNGs

A quick look at the APNG format and how it compares to WebP for animated images.

· 1 min

How to Use Cursor (Step-by-Step Guide)

Cursor is an AI-powered code editor. This guide covers subscription options, settings synchronization, tool calling, …

· 2 min
CursorAIToolsIDE

Getting the Mac mini M4

I recently picked up a Mac mini M4. After using it for a few weeks, I’m really happy with it, so I’m jotting down my …

· 1 min
MacApple EcosystemAnnual Summary

Building Real-time Web Page Ranking Monitoring with GitHub Action

Recently, I had a requirement to monitor the ranking situation of a certain entry in a competition. Unfortunately, the …

· 2 min
GitDevOps

Web Dev — Show Search Button on iOS Keyboard

How to display a Search action on the software keyboard across iOS and Android and handle the resulting events.

· 1 min
Frontend DevelopmentHardware

How to Use ESLint (Step-by-Step Guide)

Common Plugins

· 1 min
Code QualityJavaScript

Refresh Rate Explained (Simple Guide)

I’ve been looking into frontend animation jank, which is related to refresh rate. I looked up some basics about refresh …

· 2 min

Webpack Plugin to Auto-Rename Variables

I previously built a webpack loader called domain-replace-loader to replace domains in frontend JS, e.g., swapping to a …

· 1 min
Build ToolsFrontend Development

My Medium Earnings in 2024

In 2024, I resolved the issue with using Stripe for payments on Medium, so I subscribed to Medium membership at the …

· 2 min

npm Cache

When developing with npm, you may notice that if you delete the node_modules folder and then reinstall dependencies, …

· 1 min
Node.js

Ways to Access DeepSeek Reliably

Since DeepSeek exploded in popularity around Lunar New Year, the web UI and APIs have been unreliable. Here are a few …

· 1 min
AI

How to Use OpenResty (Step-by-Step Guide)

A guide to using OpenResty for web server configuration, focusing on GZIP settings and basic operations.

· 1 min
Deployment & Operations

Handling Browser Compatibility in Vite

Use the official Vite legacy plugin to target older browsers without managing Browserslist/Core-JS manually.

· 1 min
Build Tools

Achieving Ebook Reading Freedom

A simple setup for ebook reading: WeRead for apps and imports, plus a Telegram Z-Library bot for finding titles.

· 2 min
Communication ToolsHardware

How to Use 1Password (Step-by-Step Guide)

Having used 1Password for many years, here I’ll summarize the usage methods of 1P.

· 4 min
1Password1PPassword ManagerMac

Detect and Remove Unused Dependencies in Projects

Recently when looking at some projects, I found many dependencies. After searching a few randomly, I discovered they …

· 2 min
npmyarntools

Pipeline Optimization — Cache Directories

Speed up CI pipelines by caching npm dependencies on the host and inside Docker builds, with example Jenkinsfile …

· 1 min
DevOps

Converting MP3 and Other Formats to WeChat Silk Audio Files

I’ve been playing with WeChat bots in my spare time, and recently wanted to add support for sending voice files. …

· 1 min
Communication Tools

One-Click Open VSCode Projects with Alfred

Cursor(VSCode) has been used frequently for coding, but opening projects is inefficient. I wanted to create an Alfred …

· 1 min
AlfredVSCodeCursorWorkflow

How to Use DeepSeek AI Translation with Eudic Dictionary (Step-by-Step Guide)

Eudic Dictionary’s default translation quality is average, and using Eudic AI requires a separate payment. Fortunately, …

· 1 min
Eudic DictionaryDeepSeek

AI Usage in JetBrains IDE

This article discusses AI usage strategies in JetBrains IDEs, including tool configurations and practical …

· 2 min
Development ToolsAI

How to Use DeepSeek (Step-by-Step Guide)

DeepSeek AI has gained considerable attention recently. Today, I learned about it and considered migrating some of my …

· 2 min
ChatGPTDeepSeekChinese AI

JD Plus Membership Tips

As a JD Plus member for more than seven years, I’ve collected a few tips worth sharing. Notes

· 2 min

Viewing Key Performance Metrics in Chrome

Frontend developers need to pay attention to key performance metrics that help us understand website performance status …

· 1 min

Is Deploying Node.js on Multi-Core Machines a Resource Waste

Our server-side project is deployed in a cluster, with each POD running a docker-nodejs application. POD configuration …

· 1 min