Blog
Short reads on building software.
Tips, tool reviews and news for people who build for the web. One idea per post, explained plainly.
56 postsPage 5 of 5RSS feed
Image optimization for the web: a practical guide
Images are usually the heaviest part of a page. Resize them, compress them, serve modern formats and the right size per screen, and load them in the right order.
API endpoint security: a practical checklist
Most API breaches come from a short list of mistakes: missing authorization checks, trusted input and no rate limits. A checklist to review every endpoint against.
Keep API keys out of your frontend and your repo
An API key in frontend code or a Git commit is a public key. Where secrets belong, how a backend proxy protects them, and what to do the moment one leaks.
JavaScript performance: keep the main thread free
A page can load fast and still feel slow. Batch DOM updates, debounce noisy events and break up long tasks to keep the interface responsive.
Why Vite is fast: native ES modules in development
Vite starts a dev server in moments because it does not bundle your app first. How native ES modules, pre-bundled dependencies and hot module replacement make that work.
AI code assistants: where they help and where they don't
AI code assistants now sit inside most editors. A candid look at the work they speed up, the work they make worse, and how teams get real value from them.
CSS container queries: components that fit their space
Media queries ask how wide the screen is. Container queries ask how wide the component's own box is, so one card works in a sidebar, a grid or a full-width row.
Environment variables in Node.js and Vite
Hard-coded URLs and keys make an app fragile and unsafe. How .env files work in Node.js and Vite, which values reach the browser, and how to validate them at startup.
Tell us what’s in the way.
A few lines is enough. You get a candid yes, a candid no, or a sharper question.
- Working software in week four
- A reply in one business day
- Handover is the deliverable
Prefer email? [email protected]