About Shan
I build interfaces and products, and write about what I learn.
I'm Shan, a frontend-focused developer who enjoys React, Next.js, TypeScript, and turning complex ideas into clear, useful web experiences.
Building Shanverse — a space to learn, build, and share.

My story
From information systems to web experiences
I started out curious about how technology helps people get their everyday work done. While studying Management Information Systems at Thuongmai University, I gradually focused on interface development and user experience.
Frontend draws me in because it is where engineering, product, and design meet. Each project deepens my understanding of React, Next.js, TypeScript, application architecture, and building interfaces that work well on every device.
I created Shanverse to record what I learn, showcase what I have built, and share knowledge that may help other developers.
Toolkit
Skills and technologies I'm growing
The tools I use and keep learning through Shanverse and my personal projects.
Backend & Data
Tools
Focus areas
How I build
How I build products
01
Understand the problem
Start from what users need and clarify the problem before choosing technology.
02
Build systematically
Split interfaces into clear components, use type-safe code, and keep the architecture easy to extend.
03
Care about the experience
Pay attention to responsiveness, accessibility, performance, and the small details of interaction.
04
Keep improving
Test, gather feedback, write down lessons, and improve the product with every version.
Journey
Learning and building journey
Studying Management Information Systems
Thuongmai University
Built a foundation in information systems, business processes, and how technology supports organizations.
Focusing on frontend development
Learned and practiced HTML, CSS, JavaScript, TypeScript, React, and Next.js through personal projects.
Building personal products
Developed interfaces and web apps to sharpen product thinking, UI/UX, and code architecture.
Building Shanverse
Created a tech blog and portfolio with Next.js, TypeScript, Tailwind CSS, and Notion as the CMS.
Principles
Values I want to keep in my work
Learn proactively
Explore what I don't know yet, experiment in real projects, and note what can be improved.
Think from the user's side
Judge technical choices by how clear, useful, and accessible the resulting experience is.
Clear, responsible code
Favor readable structure, type safety, and decisions that can be explained.
Share what I learn
Turn what I learn while building into notes that help me and other developers.
The Shanverse mascot
Meet Tianwu, the astronaut turtle
I do everything slowly, and people often compare me to a turtle. Instead of arguing, I drew that turtle, gave him an astronaut helmet and made him Shanverse's travel companion.
Tianwu isn't the fastest flyer, but he never turns back. A heavy crate gets pushed one step at a time; when he's lost, he stops, reads the stars and keeps going.
You'll run into Tianwu all over the site: while content loads, when a search comes up empty, or if you wander onto a page that doesn't exist.
Slow and steady. Never give up.Play Tianwu's crate puzzle
Tianwu stickers
Download them as avatars or for your notes. They're SVG files, so they stay sharp at any size.
Let's build something useful.
I'm always happy to talk about frontend, products, internship opportunities, and interesting projects.
Read my notes on the blog