Blog

auto-fit vs. auto-fill in CSS Grid: What's the Difference?
There's one line of CSS Grid that shows up in almost every modern card layout: grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
Continue Reading
Implementing a Shopping Cart and Inventory System in MongoDB
Carts and inventory are where e-commerce stops being a content problem and becomes a concurrency problem. A product page can be cached for an hour, b
Continue Reading
Static Type Checking in Python with mypy and Pyright
Type hints on their own don't do anything. Python stores them and moves on, so a function annotated to return str can return None all day long wi
Continue Reading
CSS Grid Template Areas: Visual Layouts in Code
Most CSS layout code is abstract. You read grid-column: 2 / 4 or flex: 1 1 0 and have to picture the result in your head. grid-template-areas i
Continue Reading
New Viewport Units: dvh, svh, and lvh Explained
If you've ever built a full-screen hero section with height: 100vh, you've probably opened it on a phone and found the bottom cut off. The call-to-
Continue Reading
Generics, Protocols, and TypedDict: Advanced Type Hints in Python
Basic type hints take you a long way. str, list[int], dict[str, float], and X | None cover most function signatures. Then you hit code that's
Continue Reading