LogoBotmonster Tech
AI Smart Home Self-Hosting Coding Web Dev Hardware Bootpag Image2SVG Tags

Web Dev

Modern web development from someone who builds it. CSS, JavaScript, web standards, and the patterns that actually scale.

  • ◀︎
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • ▶︎
Monorepo Management with Turborepo: A Practical Guide

Monorepo Management with Turborepo: A Practical Guide

Turborepo is a fast build system for JavaScript and TypeScript monorepos. It uses content-aware caching, parallel tasks, and smart dependency ordering. The result: multi-package repos that stay fast to work with. You define workspace packages in a pnpm-workspace.yaml file, then add a turbo.json that declares task dependencies and caching rules. Turborepo handles the rest. Running turbo run build only rebuilds packages whose source files changed. Cache hits restore build outputs in milliseconds instead of minutes.

Type-Safe APIs with Pydantic v3 and FastAPI: A Best Practices Guide

Type-Safe APIs with Pydantic v3 and FastAPI: A Best Practices Guide

Pydantic v3 shipped in late 2025. It has a new Rust-backed core and a fresh model system. With FastAPI 0.115+, you get auto request checks, fast JSON output, and OpenAPI 3.1 docs. No manual schema work. Data errors get caught at the API edge. Client SDKs come from the live spec. The check overhead that used to be a bottleneck is now mostly gone.

This guide walks through what changed in v3, how to lay out a production project, the validation patterns to know, and what deployment looks like when you care about speed.

CSS Anchor Positioning: Replace Floating UI With CSS

CSS Anchor Positioning: Replace Floating UI With CSS

CSS Anchor Positioning is a browser-native feature that pins any absolutely-placed element to another element in the document. No JavaScript required. With the anchor() function, position-anchor property, and @position-try rules, you can build tooltips, dropdown menus, and context menus in pure CSS and HTML. It now works in Chrome 125+, Firefox 132+, and Safari 18.2+, which covers about 91% of browser traffic. Pair it with the HTML popover attribute (Baseline 2024) and you get show/hide toggling, keyboard dismissal, and top-layer stacking for free. The JavaScript tooltip library is dead for most use cases.

Implement OAuth 2.0 with PKCE: Flask + GitHub Login

Implement OAuth 2.0 with PKCE: Flask + GitHub Login

You implement OAuth 2.0 login by using the Authorization Code flow with PKCE (Proof Key for Code Exchange). Your web app redirects the user to the provider’s authorization endpoint with a code_challenge, the user authenticates and consents, the provider redirects back with an authorization code, and your backend exchanges that code along with the code_verifier for an access token. PKCE is mandatory for all OAuth 2.0 clients under the OAuth 2.1 draft specification (currently at draft-ietf-oauth-v2-1-15) and eliminates the need for a client secret in public clients. Building this from scratch - without Auth0, Clerk, or NextAuth - takes roughly 200 lines of code and teaches you exactly how token exchange, session management, and token refresh actually work.

Tailwind v4: Oxide Rust Engine, 182x Incremental Builds, CSS Config

Tailwind v4: Oxide Rust Engine, 182x Incremental Builds, CSS Config

Tailwind CSS v4 is a ground-up rewrite. The JavaScript-based PostCSS plugin is gone. In its place is a Rust-powered engine called Oxide. Configuration moves from tailwind.config.js into CSS-native @theme directives. Full builds run up to 5x faster, and incremental builds over 100x faster. The entry point is now a single @import "tailwindcss" line instead of three @tailwind directives. Most v3 projects can migrate in under an hour with the official @tailwindcss/upgrade codemod. Still, knowing what changed, and why, prevents surprises during the move.

Web Font Subsetting: Cut Payload by 90% with Variable Fonts

Web Font Subsetting: Cut Payload by 90% with Variable Fonts

By subsetting a variable font with pyftsubset to include only the Unicode ranges and OpenType features your site actually needs, and serving it as a WOFF2 file with the CSS unicode-range descriptor, you can reduce web font payload by 70-85%. A typical setup drops a 300 KB variable font to under 40 KB while keeping full weight and italic axis support for every glyph you actually use. This post walks through the entire process from font selection to CI integration.

  • ◀︎
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • ▶︎

Most Popular

The Best Static Site Generators for Your Blog in 2026

The Best Static Site Generators for Your Blog in 2026

Compare Astro, Hugo, Eleventy, and Quartz on build speed, content model, and use cases. Pick the best static site generator for your blog in 2026.

Turso puts SQLite reads under a millisecond, anywhere in the world

Turso puts SQLite reads under a millisecond, anywhere in the world

Turso distributes SQLite to the edge via embedded replicas that sync from a primary database. Sub-millisecond reads with managed global write replication.

Hugo Builds: Parallel Rendering, Image Cache, Fingerprinting

Hugo Builds: Parallel Rendering, Image Cache, Fingerprinting

Optimize Hugo builds with parallel rendering, image pipeline caching, CSS/JS fingerprinting, and CI/CD caching. Cut build times from minutes to seconds.

CSS Anchor Positioning: Replace Floating UI With CSS

CSS Anchor Positioning: Replace Floating UI With CSS

CSS Anchor Positioning pins tooltips and popovers to elements using pure CSS. Replace JavaScript positioning libraries with native browser anchor APIs.

SQLite at the Edge: 100x Faster Reads, Cloudflare D1 and LiteFS

SQLite at the Edge: 100x Faster Reads, Cloudflare D1 and LiteFS

SQLite at the edge: sub-millisecond queries in serverless, CDN environments. Cloudflare D1, Turso, and Litestream distribute databases for production.

Svelte 5 runes quietly rewrote how reactivity works

Svelte 5 runes quietly rewrote how reactivity works

Master Svelte 5 runes: $state, $derived, $effect, $props, $bindable. Covers Svelte 4 comparisons, migration strategies, and SvelteKit 2 integration.

Like what you read?

Subscribe to the Botmonster newsletter and get Linux, AI, and self-hosting posts weekly.

Privacy Policy  ·  Terms of Service
2026 Botmonster