shaunchander.me
writing
about
contact
── The archive
writing
.
53 entries on systems, tools, and the craft.
06/01/26
Reviewing is the new 10x
Tooling
05/25/26
Why I'm building a second brain
Essay
05/23/23
Form validation with Zod and Svelte
Frontend
05/22/23
Effective modals in SvelteKit
Frontend
05/07/23
Client-side only middleware in SvelteKit
Frontend
04/12/23
Up and running with Turborepo (feat. NextJS and SanityCMS)
Tooling
04/09/23
Building animated mobile navbars with framer-motion and TailwindCSS
Frontend
03/04/23
Remove an outer array in JavaScript with the flat method
Frontend
02/25/23
Tip #32: Improve images by using the picture tag
Frontend
02/25/23
Tip #31: Improve image performance by using lazy loading
Frontend
02/25/23
Tip #33: Automatically add ellipsis with the truncate utility
Frontend
02/24/23
Tip #28: Use containers properly in TailwindCSS with padding
Frontend
02/24/23
Tip #30: Make your external links secure with the rel attribute
Frontend
02/24/23
Tip #29: Debug your CSS with a ??? utility
Frontend
02/23/23
Tip #26: Use clamps to build fluid typography systems
Frontend
02/23/23
Tip #25: Fix z-index issues using relative positioning
Frontend
02/23/23
Tip #27: Build simple sliders with scroll snapping in TailwindCSS
Frontend
02/22/23
Tip #24: Use arbitrary variants in TailwindCSS to style headless CMS content
Frontend
02/22/23
Tip #22: Build price tables with flex-box
Frontend
02/22/23
Tip #23: Always define width and height attributes for images
Frontend
02/21/23
Tip #20: Use transforms to build wavy section dividers
Frontend
02/21/23
Tip #19: Use containers and padding to build responsive websites
Frontend
02/21/23
Tip #21: Add confetti effects to your website with confetti.js
Frontend
02/20/23
Tip #17: Use the scroll-behavior property to set smooth scrolling
Frontend
02/20/23
Tip #16: Use article tags correctly
Frontend
02/20/23
Tip #18: Add TailwindCSS to any project with npx
Frontend
02/17/23
Tip #13: Use Date to add the current year to your copyright claim
Frontend
02/17/23
Tip #14: Change the text highlight color with ::selection
Frontend
02/17/23
Tip #15: Build buttons using inline-flex
Frontend
02/16/23
Tip #10: Use divides in TailwindCSS to quickly add borders
Frontend
02/16/23
Tip #11: Push elements to the bottom of their containers with flex-grow
Frontend
02/16/23
Tip #12: Augment your browser console logs with CSS
Frontend
02/15/23
Tip #8: Use focus-visible to improve keyboard accessibility
Frontend
02/15/23
Tip #9: Disable image drag by setting draggable to false
Frontend
02/15/23
Tip #7: Build grid systems with flex containers
Frontend
02/14/23
Tip #4: Use semantic HTML tags to increase SEO
Frontend
02/14/23
Tip #6: Use focus rings to improve user experience on input forms
Frontend
02/14/23
Tip #5: Use flex columns to create your website's layout
Frontend
02/13/23
Tip #3: Add hover effects to SVG icons with fill
Frontend
02/12/23
Tip #1: Use space and gap utilities in TailwindCSS
Frontend
02/12/23
Tip #2: Create faded background images using linear gradients
Frontend
02/06/23
Tailwind Tips — Maintaining global typography styles
Frontend
02/05/23
Setting Ghost's admin url properly
Backend
01/23/23
All about variants in framer-motion
Frontend
01/17/23
Coming back after a break
Essay
01/06/23
Building animated mesh gradients with whatamesh
Frontend
01/04/23
Enter and exit animations with framer-motion
Frontend
01/02/23
Gesture animations with framer-motion
Frontend
01/01/23
Get started with framer-motion
Frontend
01/01/23
A lot happened in 2022
Essay
12/31/22
My stack going into 2023
Tooling
12/31/22
Actually update npm packages to their latest versions
Tooling
12/30/22
So... I built my website with QwikJS
Frontend
© 2026 · brooklyn, ny
7:33 PM
shaunchander
shaunchander