Skip to content
曾亮懿 ZengLiangYi Blog
Skills & Practice

From frontend to
AI products

Here is the frontend, AI tooling, and full-stack work I've done, grouped by area with links to the corresponding projects and articles.

Frontend & apps

Frontend & cross-platform development

On the frontend, I mainly write React, Vue, and Next.js in TypeScript, and have also built apps with Flutter and Electron.

I care about how components are split, how state and data flow, and whether an interface reads and works well across devices. I pick tools to fit the job.

Read about concurrent token refresh

Areas of focus

  • Web interfaces — organizing pages, components and interactions with React, Vue and Next.js.

  • Cross-platform apps — building apps beyond the browser with Flutter and Electron.

  • Types & state — using TypeScript to clarify data shapes and investigate asynchronous state and component lifecycles.

  • Interaction design — checking responsive layouts, feedback and keyboard interaction so features are understandable and usable.

  • Frontend engineering — using Vite, build tooling and reusable components to organize maintainable projects.

AI & tools

AI agents & developer tools

I'm interested in how AI fits into everyday development: organizing coding conversations, retrieving project experience and making that knowledge available to agents.

ChatCrystal puts this into practice: a local-first tool that turns AI coding conversations into notes and connects them to later workflows through semantic search, a tag graph, CLI tools and MCP.

Explore ChatCrystal

Areas of focus

  • Conversation organization — turning scattered AI coding conversations into notes with titles, summaries and tags.

  • Semantic search — retrieving experience relevant to a problem through semantic search and related information.

  • Connected knowledge — using a tag graph to show how notes connect and make review easier.

  • Agent memory — letting agents retrieve and record reusable project experience through MCP.

  • Developer tools — using CLI tools, browser extensions and automation to address recurring development problems.

Full-stack delivery

Full-stack delivery & engineering

On the backend, I write Python and Node.js, using automation scripts and Docker to take projects from local development to running services.

I focus on API contracts, configuration, failure states and maintenance costs. Docker and GitHub Actions help make builds, validation and delivery repeatable and easier to troubleshoot.

Explore Network Error Reporter

Areas of focus

  • APIs & data — connecting frontend and backend services with clear requests, responses and error handling.

  • Container deployment — using Docker to organize runtime environments, service configuration and deployment.

  • Automation — using GitHub Actions and scripts for repeatable build and validation steps.

  • Performance & reliability — assessing behavior through actual loading paths, asynchronous state and failure cases.

  • Ongoing iteration — recording design tradeoffs, user feedback and validation results to inform the next improvement.

Approach

From a problem to a working solution

The rough order I follow when tackling a problem.

1

Understand the problem

Reconstruct the context, expectations and constraints to turn an unclear symptom into a testable problem.

2

Narrow the scope

Find a minimal reproduction and key variables, distinguishing causes, triggers and symptoms.

3

Implement & validate

Choose an appropriately scoped solution and check expected behavior, failure cases and boundaries.

4

Document & iterate

Explain the conditions and tradeoffs, improve the result through feedback and capture the lessons in code or writing.

Questions

Skills & collaboration

Clarifying the technical scope, communication and expectations.

Technology & writing

What areas do you work in?
Frontend and cross-platform development, AI agents and developer tools, plus full-stack work involving backend APIs, automation and deployment.
Which technologies do you use?
This site runs on Astro. In other projects I've used React, Vue, Next.js, Flutter, and Electron, picking tools to fit the job.
Where can I explore your AI tooling work?
Explore ChatCrystal for conversation imports, note organization, semantic search and MCP integration.
How do you validate an implementation?
I choose type checks, tests, production builds or browser checks according to the risk, including failure cases and the conditions under which the result holds.
How are English versions of articles published?
English versions are maintained separately and published when the translation is ready. Use the language switcher to open an available translation.

Communication & collaboration

How can we discuss a project?
Email me the goal, scope and timing first. Whether I can help depends on the requirements and my availability at the time.
Can we discuss things remotely?
Yes. Email is a useful starting point for the context and questions, and we can choose other ways to communicate as needed.
Do I need a complete specification before contacting you?
No. Describe the current problem, the outcome you want and any materials you already have so we can begin assessing the direction.
When can you estimate the timeline?
Once I understand the scope, dependencies and acceptance criteria, I can assess a realistic timeline.
How can I reach you?
Use the contact form, email contact@zengliangyi.com or reach out through my public profiles.

Have a problem or a collaboration in mind?

Tell me the context, your goal and what you've already tried. We can start by discussing the direction and feasibility.