Sergio Xalambrรญ

Bookmarks

Links that I read and liked.

Subscribe to my bookmarks using RSS.

  1. Everything I know about good API design

  2. Your code is your responsibility, even if AI wrote it

  3. No Meat Proxy

  4. Render JSX to images.Skip the browser.

  5. Ship the policy, not the code

  6. The Field Guide to Grid Lanes

  7. The Best Loading States Are No Loading States

  8. How's Linear so fast? A technical breakdown

  9. The Boring Internet

  10. When life gives you lemons, write better error messages

  11. Accept: text/markdown

  12. Domain structure for SaaS products

  13. The Vertical Codebase

  14. Details that make interfaces feel better

  15. Expand your hit areas

  16. Nobody Gets Promoted for Simplicity

  17. Why I don't use down migrations

  18. How we enabled Content Security Policy for everyone

  19. Hire managers of one

  20. SQLite-on-the-Server Is Misunderstood: Better At Hyper-Scale Than Micro-Scale

  21. The Too Early Breakpoint

  22. More invoker commands, and more reasons not to use JavaScript please

  23. sergiodxa/agent-skills

  24. The Incredible Overcomplexity of the Shadcn Radio Button

  25. Affordances: The Missing Layer in Frontend Architecture

  26. Confirmation dialogs with zero JavaScript

  27. Stylish dialogs

  28. Logging Sucks - Your Logs Are Lying To You

  29. Micro-libraries need to die already

  30. The stacking workflow

  31. Composition Is All You Need by Fernando Rojo at React Universe Conf 2025

  32. Tips for good UI implementation

  33. The Perils of Reactivity

  34. No, you don't want to hire "the best engineers'

  35. Prefer Gaps To Margins

  36. Syntax Highlighting code snippets with Prism and the Custom Highlight API

  37. Resilient Import Maps - Better Theme Development and Beyond

  38. Toasts are Bad UX

  39. The XY Problem

  40. Don't ask to ask, just ask

  41. no hello

  42. never just

  43. JSX Over The Wire

  44. The Back-end for Front-end Pattern (BFF)

  45. Maybe don't navigate(-1) in Remix/React Router

  46. Class methods are Rubyโ€™s useEffect

  47. What I learned at Campsite

  48. How I Stay Sane Implementing Stripe

  49. Domain driven boldness

  50. Good concerns

  51. Vanilla Rails is plenty

  52. Active Record, nice and blended

  53. Globals, callbacks and other sacrileges

  54. Stop just using โ€œFrontendโ€ or โ€œBackendโ€ to describe the Engineering you like

  55. You Can't Not Have a Framework

  56. This doesn't warrant a blog post

  57. Because I wanted to

  58. Layered Architectures with Laravel

  59. Don't Sleep on AbortController

  60. Building a Proper REST API

  61. How I would do auth

  62. Card Stack

  63. Counterscale and the New Self-Hosted

  64. Deconstructing the Monolith: Designing Software that Maximizes Developer Productivity

  65. Ultimate guide to multi-tenant SaaS data modeling

  66. Migrating from Radix to React Aria: Improving Accessibility and UX

  67. Creating a pointer-friendly submenu experience

  68. Building like it's 1984: A comprehensive guide to creating intuitive context menus

  69. Building future facing frontend architectures

  70. Navigating the future of frontend

  71. Margin considered harmful

  72. In Loving Memory of Square Checkbox

  73. The Copenhagen Book

  74. Documenting Architecture Decisions

  75. Parallelized Decision Making

  76. I miss RSS

  77. RSC is React Server + Component | bobae kang

  78. Passkey-Based Auth in Remix (feat. Alex Anderson) - YouTube

  79. Remix Movies: build a movie browser with Remix - YouTube

  80. Trellix: build a Trello clone using Remix - YouTube

  81. Designing better target sizes

  82. Kind of annoyed at React

  83. Increasingly miffed about the state of React releases

  84. The Website vs. Web App Dichotomy Does Not Exist

  85. gilest.org: Make the indie web easier

  86. Why Fetch Promise Does Not Reject on Error Responses

  87. A Well-Known Links Resource - Jim Nielsenโ€™s Blog

  88. The OG Social Network: Other Peopleโ€™s Websites - Jim Nielsenโ€™s Blog

  89. Rationale for a Browser-Level Color Scheme Preference - Jim Nielsenโ€™s Blog

  90. A Well Known URL For Your Personal Avatar - Jim Nielsenโ€™s Blog

  91. React Aria

  92. Stop Lying to Your Users | Epic Web Dev by Kent C. Dodds

  93. Challenging Established Norms: Making Component Fetching the Exception

  94. Be the browserโ€™s mentor, not its micromanager

  95. The ideal viewport doesnโ€™t exist

  96. My thoughts on open-source

  97. Social RSS

  98. The fediverse and the indieweb

  99. Blogging as DRY

  100. Everything You Can Test In Your Laravel Application

  101. Dear Open Source: letโ€™s do a better job of asking for money

  102. Don't make me think, or why I switched to Rails from JavaScript SPAs

  103. Generating income from open source

  104. Client-side JavaScript and React criticism: What comes next?

  105. Fast and maintainable patterns for fetching from a database

  106. A Theory of Web Relativity

  107. Streaming: is it worth it?

  108. Prioritise content over components

  109. Overcoming Popular Issues With React Projects

  110. ๐Ÿ’ฟ remix simplifies things

  111. Progressively enhance for a more resilient web

  112. Get in Zoomer, We're Saving React

  113. What if your Index Page was Smart?

  114. Building websites for Safari Reader Mode and other reading apps

  115. How to Section Your HTML

  116. Block Links: The Search for a Perfect Solution

  117. Debug your server-side Remix code using VSCode

  118. RSS

  119. Device-Agnostic

  120. Using rel=preload for responsive images

  121. How to avoid layout shifts caused by web fonts

  122. โ€œGuys, weโ€™re doing pagination wrongโ€ฆโ€

  123. Why Remix doesnโ€™t infer types from loaders for useLoaderData

  124. Survivorship Bias in Web Performance

  125. The "best" way to manage icons in React.js

  126. Live validation is problematic

  127. Stop building client-side forms

  128. Why Decentralization Isn't as Important as You Think

  129. When You Stop Counting

  130. Why I Quit Google to Work for Myself

  131. Donโ€™t Build A General Purpose API To Power Your Own Front End

  132. Why You Should Never Use MongoDB

  133. A Case For Use Cases

  134. People read on the web

  135. Why we use progressive enhancement to build GOV.UK

  136. Building a resilient frontend using progressive enhancement

  137. I Want To Confirm a Prompt That We Stay Alert

  138. Browsers and Representation

  139. Google vs. the web

  140. Back to the Bad Old Days of the Web

  141. The Mythical Document Web

  142. Breaking the web forward

  143. Back to the Future with RSS

  144. Client-Side Architecture Basics

  145. Organizing App Logic with the Clean Architecture

  146. Implementing DTOs, Mappers and the Repository Pattern

  147. Screaming Architecture

  148. Better Software Design with Application Layer Use Cases

  149. Anemic Domain Model

  150. Value Objects - DDD w/ TypeScript

  151. iOS 15, Humane

  152. Don't overabstract your components

  153. Meta Theme Color and Trickery

  154. Imagining native skip links

  155. Rails design patterns - The big picture

  156. Before You memo()

  157. Implement a Skip Link for Navigation-Heavy Sites

  158. Meaningful Motion with Action-Driven Animation

  159. An Interactive Guide to CSS Transitions

  160. Preload: What Is It Good For?

  161. The unreasonable effectiveness of simple HTML

  162. Open Peeps

  163. System Design 101

  164. A primer on investing for designers and developers

  165. In Critical Defense of Frontend Develop

  166. Be Wary of Nesting Roles

  167. Accessible SVGs

  168. dotCSS 2019 - Sarah Dayan - In Defense of Utility-First CSS

  169. Alt-texts: The Ultimate Guide

  170. Polymorphic React Components in TypeScript

  171. CSS and Scalability

  172. The UI and UX Tips Collection: Volume One.

  173. Practical React Query

  174. Don't design for mobile

  175. Stop Using โ€œDrop-downโ€

  176. Decoupling, Architecture and Teams

  177. The Lava Layer Anti-Pattern

  178. UI as an afterthought

  179. In 2020, what is "frontend" ๐Ÿคจ

  180. How React Query gives you almost everything you thought you needed GraphQL for

  181. Wormhole state management

  182. Todo el software estรก roto

  183. What is the Value of Browser Diversity?

  184. Margins and Composability in CSS

  185. Nailing Your First (Info-Product) Launch

  186. Defining Component APIs in React

  187. The Modern Front-End Design System Stack

  188. Building the New facebook.com with React, GraphQL and Relay

  189. Architecting UIs for Change

  190. When frontend means full stack

  191. Building a Button Part 2: Hover Interactions

  192. Building a Button Part 1: Press Events

  193. About HTML semantics and front-end architecture

  194. "Semantic" CSS

  195. CSS Utility Classes and "Separation of Concerns"

  196. Second-guessing the modern web

  197. A clean start for the web

  198. Writing Type-Safe Polymorphic React Components (Without Crashing TypeScript)

  199. Using SwiftUI's Spacer to Create Complex Layouts

  200. Most tech content is bullshit

  201. The Art of UI Skeletons

  202. How to Design a Web Application: Software Architecture 101

  203. Shared Hook State with SWR

  204. Testing in the Frontend World

  205. The Real Dark Web

  206. The Elements of UI Engineering

  207. frontend design, react, and a bridge over the great divide

  208. The Great Divide

  209. We have a problem with promises

  210. Taming the asynchronous beast with ES7

  211. The Fault in Our Tolerance: Accounting for Failures in React

  212. 7 Principles of Rich Web Applications

  213. ๐ŸŒฑ My blog is a digital garden, not a blog

  214. Shape Up: Stop Running in Circles and Ship Work that Matters

  215. How the Blog Broke the Web

  216. Turning the database inside-out with Apache Samza

  217. Design Systems and Front-End Architecture by Stuart Robson

  218. How to Section Your HTML

  219. write on your own website

  220. Going Indie. Step 2: Reclaiming Content

  221. Just write

  222. The Documentation Compendium

  223. Why Text Buttons Hurt Mobile Usability

  224. Bulletproof node.js project architecture ๐Ÿ›ก๏ธ

  225. The Power of Sensible Defaults

  226. HTML Reference

  227. CSS Reference

  228. The God Login

  229. Your Body Text Is Too Small

  230. Architecture as a burden

  231. The Architecture of Open Source Applications (Volume 2): Scalable Web Architecture and Distributed Systems

  232. Scaling React Server-Side Rendering

  233. Refactoring UI

  234. Cards

  235. Introducing Grial

  236. Aplicando estilos a Pulse Editor con styled-components

  237. Usando socket.io en aplicaciones de Next.js

  238. Depurando aplicaciones de Node.js v8.0.0

  239. Personalizando Babel.js en aplicaciones de Next.js

  240. Creando botones propios para Pulse Editor

  241. Te presentamos la nueva versiรณn de Node.js

  242. Creando sitios estรกticos con Next.js

  243. Implementando Pulse Editor

  244. Aplicaciรณn de escritorio Pulse

  245. Presentamos Pulse Editor

  246. Crea aplicaciones de escritorio con Electron y Next.js

  247. Implementa Progressive server-side render con Next.js

  248. Next.js, el futuro de las aplicaciones con React

  249. Manejo de dependencias JavaScript con Yarn

  250. Deploy y orquestaciรณn de microservicios con now.sh

  251. Introducciรณn a JSON Web Tokens (JWT)

  252. ยฟQuรฉ es y para quรฉ sirve Babel?

  253. Desarrollando aplicaciones de escritorio con Electron.js

  254. ยฟQuรฉ es una aplicaciรณn isomรณrfica?

  255. Crea microservicios en Node.js con micro.js

  256. Usando React.js en el servidor con Django

  257. Estado inmutable con Redux e Immutable.js

  258. Componentes de Alto Orden en React.js

  259. Obteniendo datos en aplicaciones de Redux

  260. Usando Redux en el servidor con Socket.io

  261. Creando cรณdigo modular con ducks de Redux

  262. Renderizando aplicaciones de Redux en el servidor

  263. Manejo de errores en Redux.js

  264. Migrando a Redux

  265. Ruteo en aplicaciones de Redux y React.js

  266. Glosario de tรฉrminos de Redux

  267. Estructura de archivos Ducks para Redux.js

  268. Pruebas unitarias en Redux.js

  269. Acciones asรญncronas en Redux.js

  270. Middlewares en Redux.js