惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

G
Google Developers Blog
Jina AI
Jina AI
大猫的无限游戏
大猫的无限游戏
Martin Fowler
Martin Fowler
博客园 - 司徒正美
云风的 BLOG
云风的 BLOG
C
Cybersecurity and Infrastructure Security Agency CISA
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
S
Securelist
S
Security Affairs
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
L
LINUX DO - 热门话题
博客园 - 三生石上(FineUI控件)
T
Threatpost
T
The Blog of Author Tim Ferriss
C
CERT Recently Published Vulnerability Notes
IT之家
IT之家
P
Palo Alto Networks Blog
Microsoft Azure Blog
Microsoft Azure Blog
Spread Privacy
Spread Privacy
Cyberwarzone
Cyberwarzone
腾讯CDC
L
LangChain Blog
Know Your Adversary
Know Your Adversary
C
CXSECURITY Database RSS Feed - CXSecurity.com
GbyAI
GbyAI
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
I
Intezer
T
Tor Project blog
AWS News Blog
AWS News Blog
T
Tenable Blog
NISL@THU
NISL@THU
Security Latest
Security Latest
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
H
Hackread – Cybersecurity News, Data Breaches, AI and More
人人都是产品经理
人人都是产品经理
MongoDB | Blog
MongoDB | Blog
MyScale Blog
MyScale Blog
D
DataBreaches.Net
Microsoft Security Blog
Microsoft Security Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
量子位
美团技术团队
The Cloudflare Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
罗磊的独立博客
The GitHub Blog
The GitHub Blog
阮一峰的网络日志
阮一峰的网络日志
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Stack Overflow Blog
Stack Overflow Blog

Codrops

ZERO: The Engineering Behind a Defiant Interactive Narrative | Codrops Meet the Speakers of the First Three.js Conference | Codrops The Architecture Behind Trionn: Coordinating GSAP, Three.js, Lenis, and Web Audio | Codrops Where Stories Become Interactive Worlds: How makemepulse Brings Ideas to Life Across Web, XR, and Beyond | Codrops The Sleepers: Creating an Atmospheric WebGL Experience with Lightweight Techniques Building an Interactive Wave Propagation Cube Grid with Three.js | Codrops Ten Years Away: Designing an Interactive Comic for Studio375’s Tenth Anniversary | Codrops Building a Scroll-Driven 3D Gallery Using a Blender Camera Path with Three.js and GSAP | Codrops From Years of Client Work to a Next.js + Sanity Starter Kit | Codrops Sculpting a Digital Athlete: Capturing Stefanos Tsitsipas Beyond the Court | Codrops Building Persistent Page Transitions with WebGPU and Vanilla JavaScript | Codrops Inside Bisous: Designing an Editorial Experience for Cinematic CGI | Codrops Engineering the Web Experience Behind Shopify’s Spring ’26 Edition: Everywhere | Codrops Shaping Stories into Experience: The Work of Kevin Lam | Codrops Testing What Users Actually See with Vitest and Chromatic | Codrops Podium: Building a Website Where Running Becomes Storytelling | Codrops Designing Beyond the Surface: How DashDigital Turns Complexity into Clarity | Codrops Creative Entrepreneurship: Designing the Machine | Codrops Exploring 3D Image Rotations on Scroll | Codrops Always Building, Always Learning: Cyd Stumpel’s Journey Through the Modern Web | Codrops Designing A Better Lou: Reducing Cognitive Load Through Design, Content, and Systems | Codrops Sketching the Impossible: A 3D Portfolio Built Without a Single 3D Model | Codrops Building Horeca: Advanced Motion Design in Webflow Without the Performance Trade-Offs | Codrops Building an Interactive Digital Stamp Collection with Shaders, Postcards, and Playful Inspection | Codrops No Two Paths Alike: Inside San Rita’s Approach to Digital Experiences | Codrops The Making of the New Lesse Studio Website: Clarity, Performance, and Intentionality | Codrops Creating a Thumbnail Flow Animation with GSAP MotionPath | Codrops Forging Her Own Path: Houmahani Kane’s Journey in Creative Development | Codrops Beaucoup and the Pursuit of Memorable Experiences | Codrops The Future of Emotional Technology: Comfort Websites for Growth and Self-Awareness | Codrops The Never Ending Story: Building a Seamless Infinite Scroll Experience with GSAP & Lenis | Codrops Whooshes, Snaps and Shaders: Adrien Vanderpotte and the Feeling of the Interface | Codrops Building a Scroll-Driven 3D Cube Gallery in Webflow with GSAP | Codrops Creating Scroll-Driven SVG Map Animations with GSAP | Codrops Made With Gsap: Building a Fun Gravity-Based Mouse Trail | Codrops 80s Business Tech and Seamless Scene Transitions: Inside Shader.se’s Scroll-Driven WebGPU Pipeline | Codrops Merlin: The Code Boutique Turning Motion Into Digital Magic | Codrops Designing Ourselves: The New Obys Identity and Website | Codrops Exploring the HTML-in-Canvas Proposal | Codrops Le:mma Studio: Building the Feeling Behind the Screen | Codrops From Shader Uniforms to Clip-Path Wipes: How GSAP Drives My Portfolio | Codrops Reverse-Engineering Claude AI’s Mascot Animations with SVG and GSAP | Codrops Akaru: Crafting Precision-Driven Digital Experiences | Codrops Designing Against the Gallery: A Two-Year Journey to a Layered Portfolio Experience | Codrops Between Human and Machine: Sofia Papadopoulou’s Approach to Augmented Creativity | Codrops More Than a Portfolio: Building a Scroll-Driven 3D World with Something to Say | Codrops Rhumb Studio: Small but Mighty, Shaped by Curiosity | Codrops Susurrus: Crafting a Cozy Watercolor World with Three.js and Shaders | Codrops Building 4WIDE: Turning Distortion, Blur, and Motion into a Coherent Experience | Codrops A Playful Clip Menu with GSAP’s easeReverse | Codrops False Earth: From WebGL Limits to a WebGPU-Driven World | Codrops Interactive Storytelling for the Web: Building Immersive Stories with Timelines, 3D, and Layered Scenes | Codrops The Art of Complex Motion: Corentin Bernadou’s World of Shaders and Experimentation | Codrops They Call Me Giulio: The Making of a Cinematic Cyberpunk Portfolio | Codrops Lusion: Where Digital Craft Meets Ambitious Experimentation | Codrops The Exat Microsite: Pushing a Typography Showcase to New Creative Extremes | Codrops Creating Custom Page Transitions in Astro with Barba.js and GSAP | Codrops R—K ’26: The Thinking and Code Behind a Portfolio Led by Presence | Codrops Building the Maxima Therapy Website: React, GSAP, and Dabbling with AI | Codrops Where Engineering Meets Craft: Edoardo Lunardi’s Obsession with the Details | Codrops Animating 160,000 Cubes in Three.js to Visualize Dithering | Codrops Arnaud Rocca’s Portfolio: From a GSAP-Powered Motion System to Fluid WebGL | Codrops Where Confidence Needs No Decoration: The Malvah.Studio Story | Codrops Motion Highlights #17 | Codrops
A Single DM, a First SOTD, and the Start of Chanh M. Ho’s Creative Journey | Codrops
2026-04-09 · via Codrops

Xin chào — hello, I’m Chanh (mChanh), a creative developer based in Ho Chi Minh City, Vietnam. I’ve been following this creative path for the past three years. I’m currently open to freelance work and new collaborations, so if you have something cool in mind, feel free to reach out.

A huge thanks to Codrops for the opportunity to be featured in this Developer Spotlight and share part of my journey. Let’s goooo!

Recent Launches

1. Huy Phan’s Portfolio (2022)

Client: Huy Phan
Collaborators: Huy Phan
Awards: Awwwards (SOTD, Dev Awards), FWA (FOTD), CSSDA (WOTD, WOTM)
Tech stack: Vanilla JS, HTML, CSS, GSAP

This was the first time I worked on a website heavily focused on animation and motion.

Back then, I had only just discovered GSAP and didn’t have much experience in this space yet. The whole project was even built with plain HTML, CSS, and JavaScript — no bundler, no modern tooling, just the basics. And yeah, it was very much a learn-as-I-built kind of project. Luckily, I was still able to bring around 80% of Huy Phan’s original idea to life.

Even though it took quite a bit of time to finish, I’m happy that everything still holds up and continues to work well even today.

2. WON .J You Studios (2025)

Client: Won .J You
Collaborators: Huy Phan, Thinh Doo
Awards: Awwwards (SOTD, Dev Awards), FWA (FOTD), CSSDA (WOTD)
Tech stack: Next.js, GSAP, SCSS

This was the fastest project I’ve ever completed so far, taking around two and a half months for both the design and development. The site was built around storytelling, which meant a heavy focus on scroll-based animations throughout the experience. My favorite part was the scrolling sequence on the homepage, which also turned out to be the most challenging piece to handle.

I’m really happy with how the final output came together — it feels smooth, unique, and a little unconventional in a way that makes the experience more memorable. Finishing this project was genuinely satisfying.

Fun fact: The entire site was generated as a static page setup, with no CMS or backend involved at all xD

3. MIUX Studio (2025)

Client: MIUX Studio
Collaborators: Huy Phan, Thinh Doo
Awards: Awwwards (SOTD, Dev Awards), FWA (FOTD), CSSDA (WOTD)
Tech stack: Next.js, GSAP, SCSS, Prismic, Vercel

Another project that turned out really smooth and elegant. What I loved most here was the page transition work. As you can probably notice, the project uses two different transition types, which was a fun challenge for me since it was my first time handling multiple page transition systems in Next.js.

The image flip transition was especially interesting. At first, I didn’t account for slow network conditions, which meant the effect could break if the next page image hadn’t loaded in time. The trick that eventually made it reliable was to first flip the image into fullscreen, transition to the new page, wait for the actual image asset to finish loading, and only then complete the flip into its final position on the new page.

And yeah, once everything came together, the overall result felt amazing. I’m genuinely proud to have turned it into a polished, high-quality project.

4. Eislab (2025)

Client: Eislab
Collaborators: Huy Phan, QuangDinh
Awards: Awwwards (SOTD, Dev Awards), FWA (FOTD), CSSDA (WOTD)
Tech stack: Next.js, GSAP, SCSS, Prismic, Vercel

My first project of 2025, and also the second SOTD milestone in my career after two years. It marked an energetic and lucky start to the year, making it a truly unforgettable project.

This was also my first time working with Next.js and PrismicIO, so one of the biggest challenges was learning how to keep the project structure and codebase clean. Looking back, it became a milestone that means a lot to me.

My favorite parts were the curved slider on the About Us page and the menu animation.

About me

I still remember my university days, especially my final year before graduation, when I first discovered a different kind of website experience — creative websites that felt smooth, visually striking, and unlike anything I had seen before. That was when I came across Awwwards and Codrops, and from that moment, I knew this was the path I wanted to pursue.

At first, it was purely driven by curiosity. I simply loved the craft and wanted to learn by building, even though there weren’t really many opportunities for this kind of work in Vietnam at the time.

Later on, I came across Huy Phan in a design community and decided to send him a direct message, asking if I could have a chance to develop something in that animation-driven style. Thankfully, he gave me the opportunity to build his very first portfolio website.

After months of grinding and figuring things out, we finally launched the site — and that project led to my very first SOTD. It was an incredible and unforgettable milestone in this journey.

After that first SOTD, I joined D2 Studio (shout out to Michael B. Luong), and it wasn’t until two years later that I had the chance to collaborate with Huy Phan again. Since then, I’ve transitioned into full-time freelance work, which is where I am today.

Outside of work, one of my favorite hobbies is customizing my Vespa — another space where I get to obsess over details, style, and personality.

Workflow & Stack

1. Core Stack

  • Figma (reference design and layout exploration)
  • Next.js, React, TypeScript
  • Headless CMS (Prismic, Sanity)
  • GSAP (animation and motion systems)
  • Vercel (deployment)
  • Cursor IDE (development workspace)

2. Inspiration & References

  • Awwwards, The FWA, CSS Design Awards, Codrops
  • Save references from Twitter (X), LinkedIn

Future Goals

Right now, my biggest goal is simple: keep growing.

I want more opportunities to work with people in the industry, learn from their experience, and continue sharpening my craft. I’m also planning to go deeper into WebGL, 3D, and spoken English to open up bigger opportunities in the future.

More than anything, I hope to keep moving forward on this creative developer journey, while also seeing the Vietnamese market become more open and excited about this space.

Final thoughts

I’m truly grateful for everyone who gave me opportunities along the way, and I hope my story can inspire more developers in Vietnam to explore this creative side of the web.

And finally, a huge thank you once again to Codrops for giving me the opportunity to share my journey here. Wishing the community continued growth and even more amazing work ahead. Peaceeee ✌️

If you think our ideas might align, I’d love to connect and see what we can build together. Explore more of my work in my portfolio, drop me a line via email, or connect with me on LinkedIn / Instagram.