---
title: About Me — AI Native Developer
description: Zeng Liangyi, a full-stack developer in Shenzhen. Primarily using DeepSeek Harness, Antigravity, and Codex. Here are my engineering practices and retrospectives.
image: "https://zengliangyi.com/og/default.png"
---

About me

#   Zeng Liangyi          |              |

I do full-stack development in Shenzhen and built tools like ChatCrystal. Currently my daily drivers are DeepSeek Harness, Antigravity, and Codex. Here I document real-world engineering practices and retrospectives.

What I work on

##  My projects and technical interests

Outside work I build small tools when something annoys me, like browser extensions and an image tool, and write up problems I run into, such as React event subscriptions, concurrent token refresh and streaming playback.

### Frontend engineering

Where I started. I use TypeScript every day with Next.js, React and Vue, and care about how components are split and how state is managed.

### Web & cross-platform apps

Beyond the web, I've built apps with Flutter, Electron and Tauri, and a small Android project in Kotlin.

### Interface experience

Pages should have a clear hierarchy, work on any screen size and respond promptly when you interact with them.

### Technical writing & TIL

Writing up development problems, ways of working with AI and learning notes on GitHub, Juejin and CSDN.

### Open-source projects

Network Error Reporter, Square Image Workshop, a PPT timer… most started as something that bothered me.

### AI agent workflows

Daily driving DeepSeek Harness, Antigravity, and Codex, focusing on context engineering and agent workflows to cut down on trial-and-error and hallucinations.

### Knowledge retrieval & reuse

I built ChatCrystal to turn AI coding conversations into searchable notes that AI can reuse through MCP.

### Performance & debugging

I watch for problems caused by web performance and asynchronous state, and make a problem reproducible before changing anything.

### Full-stack development & delivery

Backends in Python and Node.js, with some Java / Spring Boot; I set up servers, Docker, Nginx and VPNs myself.

Working principles

##  How I Work

Three simple rules I hold myself to when building projects or writing technical posts.

### Start with real problems

Focus on genuine pain points instead of building complexity for its own sake.

### Understand the mechanics

AI accelerates my work, but I always make sure I understand the fundamentals, edge cases, and architectural trade-offs.

### Stay curious, ignore boundaries

Whether it's client-side state, backend logic, or server configs, if it makes the product work better, I'll dive in and learn it.

Tools & technology

## This site's stack

This site is built with Astro, TypeScript, Tailwind CSS and MDX, with a focus on static pages, content management and long-term maintenance.

[Astro](https://astro.build)    [Tailwind CSS](https://tailwindcss.com)    [TypeScript](https://www.typescriptlang.org)    [React](https://react.dev)                [Astro](https://astro.build)    [Tailwind CSS](https://tailwindcss.com)    [TypeScript](https://www.typescriptlang.org)    [React](https://react.dev)    [Cloudflare Workers](https://workers.cloudflare.com)    [GitHub](https://github.com)    [Claude](https://claude.com/claude-code)    [Astro](https://astro.build)    [Tailwind CSS](https://tailwindcss.com)    [TypeScript](https://www.typescriptlang.org)    [React](https://react.dev)    [Cloudflare Workers](https://workers.cloudflare.com)    [GitHub](https://github.com)    [Claude](https://claude.com/claude-code)    [Astro](https://astro.build)    [Tailwind CSS](https://tailwindcss.com)    [TypeScript](https://www.typescriptlang.org)    [React](https://react.dev)    [Cloudflare Workers](https://workers.cloudflare.com)    [GitHub](https://github.com)    [Claude](https://claude.com/claude-code)    [Astro](https://astro.build)    [Tailwind CSS](https://tailwindcss.com)    [TypeScript](https://www.typescriptlang.org)    [React](https://react.dev)    [Cloudflare Workers](https://workers.cloudflare.com)    [GitHub](https://github.com)    [Claude](https://claude.com/claude-code)            [Claude](https://claude.com/claude-code)    [GitHub](https://github.com)    [Cloudflare Workers](https://workers.cloudflare.com)    [React](https://react.dev)    [TypeScript](https://www.typescriptlang.org)    [Tailwind CSS](https://tailwindcss.com)    [Astro](https://astro.build)    [Claude](https://claude.com/claude-code)    [GitHub](https://github.com)    [Cloudflare Workers](https://workers.cloudflare.com)    [React](https://react.dev)    [TypeScript](https://www.typescriptlang.org)    [Tailwind CSS](https://tailwindcss.com)    [Astro](https://astro.build)    [Claude](https://claude.com/claude-code)    [GitHub](https://github.com)    [Cloudflare Workers](https://workers.cloudflare.com)    [React](https://react.dev)    [TypeScript](https://www.typescriptlang.org)    [Tailwind CSS](https://tailwindcss.com)    [Astro](https://astro.build)    [Claude](https://claude.com/claude-code)    [GitHub](https://github.com)    [Cloudflare Workers](https://workers.cloudflare.com)    [React](https://react.dev)    [TypeScript](https://www.typescriptlang.org)    [Tailwind CSS](https://tailwindcss.com)    [Astro](https://astro.build)                             Questions

##  About me and this site

My technical interests, public projects, writing and ways to get in touch.

### About me

Who are you?     I'm Zeng Liangyi (曾亮懿), a developer based in Shenzhen. Online, I also go by "夜雪闻竹", an allusion to Bai Juyi's poem about the resilience of bamboo weathering heavy snow.       What do you do?     At work, I build enterprise systems, web products, and AI applications; on the side, I build small tools whenever I'm curious about something or run into an annoyance.       What projects have you worked on?     I created [ChatCrystal](https://github.com/ZengLiangYi/ChatCrystal), a local-first knowledge base that turns AI coding chats into structured notes; a [Chrome DevTools extension](https://github.com/ZengLiangYi/network-error-reporter) for debugging network requests; and several small offline tools—all built when something bothered me.       Where can I read your writing?     TIL notes are on GitHub, and articles go on this site, Juejin and CSDN, mostly about frontend engineering, AI coding and project write-ups. My other site, [zengliangyi.online](https://www.zengliangyi.online/), also links to my projects and articles.       How can I reach you?     Just email [contact@zengliangyi.com](mailto:contact@zengliangyi.com), or find my GitHub, Juejin, CSDN and LinkedIn on the contact page.

### About this site

How is this site built?     This site is based on Astro Rocket and uses Astro, TypeScript, Tailwind CSS and MDX. Articles and pages are prerendered at build time.       How are Chinese and English content organized?     Chinese pages live at the root and English pages under /en. The interface is available in both languages, while articles are published as separate language versions. Use the language switcher when a translation is available.       Why use MDX for articles?     MDX keeps the Markdown writing experience while allowing components where useful, such as code examples, callouts and interactive content in technical articles.       Which projects are featured here?     The project section features ChatCrystal, Network Error Reporter, Square Image Workshop, and PaddleOCR-VL, covering AI knowledge management, developer tools, local browser image processing, and document parsing evaluation. Each project page links to its source and usage instructions.       How can I get in touch or suggest a correction?     If you have a question about an article or project, or notice something that needs correcting, send me a message through the contact page or email me directly.                              Open-source practice

##  Tools that start from my own needs

My projects and technical notes are public on GitHub, including how they work, the problems I hit and what I changed later.

[Visit my GitHub](https://github.com/ZengLiangYi)

### ChatCrystal

Turns AI coding conversations into searchable notes that AI can reuse through MCP.

### Network Error Reporter

Turns failed browser network requests into structured reports that are easy to share and debug.

### Today I Learned

Problems I've run into, examples you can reproduce, and fixes I've verified.

##  Take a look on GitHub

My code and notes are on GitHub; if you have questions or suggestions, come find me there.

[Visit my GitHub](https://github.com/ZengLiangYi)

```json
{
  "@context": "https://schema.org",
  "@type": "WebSite",
  "name": "ZengLiangYi Blog",
  "alternateName": [
    "Zeng Liangyi",
    "ZengLiangYi",
    "zengliangyi.com"
  ],
  "url": "https://zengliangyi.com",
  "description": "曾亮懿的个人网站。记录 AI Native 探索、开发者工具与全栈产品实践。"
}
{
  "@context": "https://schema.org",
  "@type": "ProfilePage",
  "url": "https://zengliangyi.com/en/about/",
  "name": "About Me — Profile and Developer Bio of Zeng Liangyi",
  "description": "Zeng Liangyi, a full-stack developer in Shenzhen. Primarily using DeepSeek Harness, Antigravity, and Codex. Here are my engineering practices and retrospectives.",
  "mainEntity": {
    "@type": "Person",
    "name": "曾亮懿",
    "alternateName": [
      "Zeng Liangyi",
      "ZengLiangYi",
      "夜雪闻竹"
    ],
    "jobTitle": "AI Native Developer",
    "url": "https://zengliangyi.com/en/about/",
    "email": "contact@zengliangyi.com",
    "description": "Zeng Liangyi is an AI-native full-stack developer based in Shenzhen, China. Focused on agentic workflows and developer tooling, and creator of open-source projects including ChatCrystal and Network Error Reporter.",
    "image": "https://zengliangyi.com/branding/zeng-liangyi-avatar.png",
    "address": {
      "@type": "PostalAddress",
      "addressLocality": "深圳",
      "addressRegion": "广东",
      "addressCountry": "CN"
    },
    "sameAs": [
      "https://github.com/ZengLiangYi",
      "https://x.com/yizel0501",
      "https://bsky.app/profile/yizel9.bsky.social",
      "https://juejin.cn/user/1669474445171547",
      "https://blog.csdn.net/2201_75708499",
      "https://www.linkedin.com/in/zeng-liangyi/"
    ]
  }
}
```
