Sergio Xalambrí
Web Developer from Buenos Aires with 10+ years of experience. I work at Daffy and maintain several open-source libraries around React Router and OAuth2.
Subscribe to my content using RSS, Atom, or JSON Feed.
I wrote about The Remix Way
I saved Everything I know about good API design
I saved Your code is your responsibility, even if AI wrote it
I saved No Meat Proxy
I published how to Make Regional HTTP Requests with Durable Objects
I published how to Add URL Normalization Middleware in React Router
I published how to Think in Remix UI Instead of React
I published how to Hydrate Isolated UI with Remix Client Entries
I wrote about Multi-Entry Package Architecture
I wrote about Structuring a Bun Monorepo with Shared Packages
I published how to Create Animated Tab Indicators with CSS Variables
I wrote about Compound Component Pattern in React
I wrote about Building Accessible UI with React Aria Components
I published how to Create a Copy Button for Code Blocks
I published how to Build a Type-Safe Markdown Pipeline with Markdoc
I published how to Use waitUntil for Non-Blocking Cache Writes
I published how to Build a Cache Abstraction for Cloudflare KV
I published how to Use Client Hints for Server-Side Timezone Rendering
I published how to Add a Global Hotkey to a Remix UI Dialog
I saved Render JSX to images.Skip the browser.
I published how to Build a Command-Driven Markdown Toolbar in React
I published how to Handle Custom Invoker Commands in React
I published how to Build a User Menu in React with Invoker Popover Commands
I published how to Prevent a Modal Dialog from Closing with request-close in React
I published how to Open a Modal Dialog in React with the Invoker Commands API
I saved Ship the policy, not the code
I saved The Field Guide to Grid Lanes
I saved The Best Loading States Are No Loading States
I saved How's Linear so fast? A technical breakdown
I published how to Use an `iife` Helper for Inline Control Flow in TypeScript
I wrote about How AI is Industrializing Software Engineering
I published how to Cancel `useFetcher().load()` Requests on Unmount in React Router
I saved The Boring Internet
I saved When life gives you lemons, write better error messages
I saved Accept: text/markdown
I saved Domain structure for SaaS products
I saved The Vertical Codebase
I saved Details that make interfaces feel better
I saved Expand your hit areas
I saved Nobody Gets Promoted for Simplicity
I saved Why I don't use down migrations
I saved How we enabled Content Security Policy for everyone
I added the definition of RESTful
I added the definition of MIME Type
I added the definition of Same-Origin Policy
I added the definition of CORS
I added the definition of Bearer Token
I added the definition of OIDC
I added the definition of OAuth2
I added the definition of GraphQL
I added the definition of REST
I added the definition of XML
I added the definition of JSON
I added the definition of TLS
I added the definition of TCP
I added the definition of IP
I added the definition of URI
I added the definition of URL
I added the definition of DNS
I added the definition of FTP
I added the definition of CSS
I added the definition of HTML
I added the definition of HTTPS
I added the definition of HTTP
I added the definition of WSS
I added the definition of Web API
I added the definition of Static Assets
I added the definition of Routing
I added the definition of Rendering
I added the definition of SSE
I added the definition of WebSockets
I added the definition of Idempotency
I added the definition of CDN
I added the definition of Caching
I added the definition of Rate Limiting
I added the definition of Webhooks
I added the definition of Edge Runtime
I added the definition of RSC
I added the definition of Optimistic UI
I added the definition of Progressive Enhancement
I added the definition of PKCE
I added the definition of Resource Server
I added the definition of Authorization Server
I added the definition of Refresh Token
I added the definition of Access Token
I added the definition of JWKS
I added the definition of JWK
I added the definition of JWT
I added the definition of API Gateway
I added the definition of Edge Functions
I added the definition of Serverless
I added the definition of Microservices
I added the definition of Monolith
I added the definition of BFF
I added the definition of Edge Rendering
I added the definition of Streaming SSR
I added the definition of Islands Architecture
I added the definition of Partial Hydration
I added the definition of Hydration
I published how to Access React Router Context with AsyncLocalStorage
I saved Hire managers of one
I published how to Create a Per-Request Database Instance with Middleware
I published how to Create a Multi-Directory Route Organization in React Router
I published how to Use Sec-Fetch Headers for CSRF Protection
I saved SQLite-on-the-Server Is Misunderstood: Better At Hyper-Scale Than Micro-Scale
I wrote about Using React Router Loaders and Actions as Integration Points
I saved The Too Early Breakpoint
I saved More invoker commands, and more reasons not to use JavaScript please
I saved sergiodxa/agent-skills
I saved The Incredible Overcomplexity of the Shadcn Radio Button
I saved Affordances: The Missing Layer in Frontend Architecture
I saved Confirmation dialogs with zero JavaScript
I saved Stylish dialogs
I saved Logging Sucks - Your Logs Are Lying To You
I saved Micro-libraries need to die already
I saved The stacking workflow
I saved Composition Is All You Need by Fernando Rojo at React Universe Conf 2025
I saved Tips for good UI implementation
I published how to Dedupe Server Calls with Remix Utils Batcher
I published how to Transform FormData Between UI and Database in React Router
I saved The Perils of Reactivity
I wrote about How MVC, MVT, MVVM, and Components Shape Web Development
I published how to Build a Nested Master-Detail View with Redirects in React Router
I published how to Stream Shared Promise Results in React Router
I saved No, you don't want to hire "the best engineers'
I published how to Redirect Based on Screen Size in React Router
I published how to Avoid Waterfalls in React Suspense
I published how to Render Loader Promises with Suspense in React Router
I published how to Create Reusable Action Routes in React Router
I saved Prefer Gaps To Margins
I saved Syntax Highlighting code snippets with Prism and the Custom Highlight API
I saved Resilient Import Maps - Better Theme Development and Beyond
I saved Toasts are Bad UX
I saved The XY Problem
I saved Don't ask to ask, just ask
I saved no hello
I saved never just
I published how to Add a Cookie-Based Color Scheme Toggle in React Router
I saved JSX Over The Wire
I saved The Back-end for Front-end Pattern (BFF)
I published how to Debounce Loaders and Actions in React Router
I published how to Authenticate OAuth2 Clients with client_id and client_secret
I published how to Use the OAuth2 Introspection Endpoint
I published how to Revoke OAuth 2.0 Refresh Tokens via the Revocation Endpoint
I published how to Protect OAuth 2.0 Authorization Code Flow with PKCE
I published how to Add Custom Claims to JWT Access Tokens Safely
I published how to Validate JWT Expiration, Issued-At, and Not-Before Claims
I published how to Use OAuth 2.0 Scopes to Authorize API Actions
I published how to Validate JWTs with JWKS
I wrote about JWT Claims in OAuth2 Access Tokens
I wrote about OAuth2 Scopes Explained
I published how to Create a Per-Request Singleton with React Router Middleware
I published how to Test React Router Middleware with Bun Test
I wrote about OAuth2 Tokens Explained
I wrote about OAuth2 Audience Explained
I wrote about JWT vs. Opaque Tokens
I published how to Enable and use middleware in React Router 7.3
I saved Maybe don't navigate(-1) in Remix/React Router
I wrote about Using OAuth2 in a Backend for Frontend
I published how to Show a 404 in React Router
I saved Class methods are Ruby’s useEffect
I saved What I learned at Campsite
I wrote about Throwing vs. Returning Redirects in React Router
I published how to Trigger File Downloads from React Router Loaders and Actions
I saved How I Stay Sane Implementing Stripe
I saved Domain driven boldness
I saved Good concerns
I saved Vanilla Rails is plenty
I saved Active Record, nice and blended
I saved Globals, callbacks and other sacrileges
I published how to Use Bullet to Detect N+1 Queries in Rails
I published how to Convert Markdown to PDF and ePub with Pandoc
I published how to Serve User-Specific Stylesheets in React Router
I published how to Split a React Router Route Config across Multiple Files
I published how to Configure the tracking branch in Git
I published how to Reuse route modules in React Router
I saved Stop just using “Frontend” or “Backend” to describe the Engineering you like
I published how to Populate Your Rails Database with Fixtures
I saved You Can't Not Have a Framework
I saved This doesn't warrant a blog post
I saved Because I wanted to
I wrote about Making Web Component good enough
I saved Layered Architectures with Laravel
I saved Don't Sleep on AbortController
I published how to Stub a method in a class with Minitest
I published how to Show toast after a Remix action
I saved Building a Proper REST API
I saved How I would do auth
I published how to Simplify Component Imports with TypeScript Namespaces
I saved Card Stack
I saved Counterscale and the New Self-Hosted
I wrote about Why Frontend and Backend Are About Responsibilities, Not Languages
I published how to Validate a Form in Remix with clientAction
I published how to Generate a Cloudflare Environment Type with wrangler
I published how to Configure Scoped Private Packages in Bun
I wrote about When to use Route Modal in React Router
I saved Deconstructing the Monolith: Designing Software that Maximizes Developer Productivity
I saved Ultimate guide to multi-tenant SaaS data modeling
I saved Migrating from Radix to React Aria: Improving Accessibility and UX
I saved Creating a pointer-friendly submenu experience
I saved Building like it's 1984: A comprehensive guide to creating intuitive context menus
I saved Building future facing frontend architectures
I saved Navigating the future of frontend
I published how to Use package.json#bin to create a CLI
I saved Margin considered harmful
I saved In Loving Memory of Square Checkbox
I published how to Access location.state in Remix Client Loaders and Actions
I saved The Copenhagen Book
I published how to Add Internationalization with remix-i18next to a Remix Vite App
I saved Documenting Architecture Decisions
I published how to Autoload the Correct Node.js Version with NVM
I added the definition of HDR
I added the definition of HMR
I added the definition of PPR
I added the definition of ISR
I added the definition of SSG
I added the definition of PESPA
I added the definition of PEMPA
I published how to Nest Routes with Dynamic Params in Remix
I published how to Build Register, Login, and Logout Flows with Remix Sessions
I published how to Access React Router's loader data from a route ErrorBoundary
I published how to Access React Router's Loaders Data in entry.client
I published how to Handle not found URLs with Remix
I published how to Persist the User Locale Using Cookies with React Router and i18next
I published how to Add dynamic canonical URL to Remix routes
I saved Parallelized Decision Making
I published how to Add custom attributes to Markdoc code fences
I published how to Enable Remix ~/ aliased imports in Vitest
I added the definition of API
I added the definition of MPA
I added the definition of SPA
I added the definition of CSR
I added the definition of SSR
I published how to Add syntax highlight to Markdoc using Prism.js
I published how to Create a CRUD with Remix
I saved I miss RSS
I saved RSC is React Server + Component | bobae kang
I published how to Pass Cookies from a React Router Loader to an External API
I published how to Call an action from a loader in Remix
I published how to Use React Portal in Remix
I published how to Prevent the React Router Loader to Run after Document Request
I saved Passkey-Based Auth in Remix (feat. Alex Anderson) - YouTube
I saved Remix Movies: build a movie browser with Remix - YouTube
I saved Trellix: build a Trello clone using Remix - YouTube
I published how to Defer a Fetch response in Remix
I published how to Use a CDN for your static assets in Remix
I published how to Get the absolute URL in Remix's MetaFunction
I published how to Build an app with Remix and Bun
I saved Designing better target sizes
I published how to Find and remove unused code with Knip
I published how to Create multiple top-level layouts in Remix
I saved Kind of annoyed at React
I saved Increasingly miffed about the state of React releases
I saved The Website vs. Web App Dichotomy Does Not Exist
I published how to Test meta tags using Playwright
I saved gilest.org: Make the indie web easier
I saved Why Fetch Promise Does Not Reject on Error Responses
I saved A Well-Known Links Resource - Jim Nielsen’s Blog
I saved The OG Social Network: Other People’s Websites - Jim Nielsen’s Blog
I saved Rationale for a Browser-Level Color Scheme Preference - Jim Nielsen’s Blog
I saved A Well Known URL For Your Personal Avatar - Jim Nielsen’s Blog
I saved React Aria
I saved Stop Lying to Your Users | Epic Web Dev by Kent C. Dodds
I published how to Prefetch data for Remix Fetcher usage
I published how to Keep Your Loader Data Fresh in Remix
I published how to Share Remix Route Logic between Web and API Routes
I published how to Access the Search Params of a Request in React Router
I published how to Upload Images in a Remix Application
I published how to Redirect with Search Param in Remix
I published how to Access the Loader Data in Remix
I published how to Abort Async Calls Inside Remix Loaders and Actions
I published how to Get Remix route params `entry.server`
I published how to Test meta tags with Cypress
I saved Challenging Established Norms: Making Component Fetching the Exception
I saved Be the browser’s mentor, not its micromanager
I saved The ideal viewport doesn’t exist
I saved My thoughts on open-source
I published how to Strongly type Remix route IDs
I published how to Strongly type public assets in Remix
I published how to Create a reusable Form component in Remix
I published how to Sync text input with URLSearchParam in Remix
I saved Social RSS
I saved The fediverse and the indieweb
I saved Blogging as DRY
I saved Everything You Can Test In Your Laravel Application
I saved Dear Open Source: let’s do a better job of asking for money
I saved Don't make me think, or why I switched to Rails from JavaScript SPAs
I saved Generating income from open source
I published how to Use TanStack Query to Share Data between React Router Loaders
I published how to Logout from Auth0 with Remix Auth
I published how to Send Node.js ReadStream objects from Remix loaders
I published how to Reset a form on success in Remix
I published how to Use `qs.parse` to use nested form fields in Remix
I published how to Send JSON to a Remix action
I published how to Set Multiple Cookies in the Same Response in React Router Loaders
I published how to Close SSE connection from the server in Remix
I published how to Measure performance with the Server-Timing header in React Router
I published how to Automatically commit sessions on Remix
I published how to Customize Remix AppLoadContext type
I saved Client-side JavaScript and React criticism: What comes next?
I published how to Turn on Caps Lock on Cypress
I saved Fast and maintainable patterns for fetching from a database
I published how to Delete a Cookie using Remix cookie helpers
I published how to Add runtime SSG and ISR to Remix
I published how to Improve SEO by not sending JS in Remix
I published how to Use AMP with Remix
I published how to Use Remix as a SPA only
I saved A Theory of Web Relativity
I published how to Downgrade to MPA if Users Prefer Reduced Data in React Router
I published how to Add rolling sessions to Remix
I published how to Use Server-Sent Events with Remix
I published how to Progressively Enhance the useFetcher Hook in React Router
I published how to Use `process.env` client-side with Remix
I published how to Persist inputs after a form submit in Remix
I saved Streaming: is it worth it?
I saved Prioritise content over components
I wrote about Throwing Vs. Returning Responses in Remix Loaders and Actions
I published how to Lazy-load React components in Remix
I saved Overcoming Popular Issues With React Projects
I saved 💿 remix simplifies things
I saved Progressively enhance for a more resilient web
I saved Get in Zoomer, We're Saving React
I wrote about Reusing Remix Routes for Optional Segments
I published how to Destroy User Session and While Setting a Flash Message in React Router
I published how to Add additional data before submitting on Remix
I published how to Redirect to an external website with Remix
I published how to Bubble up data on Remix routes
I published how to Group related routes together in Remix
I saved What if your Index Page was Smart?
I saved Building websites for Safari Reader Mode and other reading apps
I saved How to Section Your HTML
I saved Block Links: The Search for a Perfect Solution
I published how to Parse Markdown with Markdoc in Remix
I wrote about Dependency injection in Remix loaders and actions
I wrote about Validating Environment Variables with Zod
I saved Debug your server-side Remix code using VSCode
I saved RSS
I wrote about Handling Refresh Tokens in Remix Loaders and Actions
I saved Device-Agnostic
I wrote about E2E Testing Remix with Vitest and Puppeteer
I published how to Optimize image loading with plain HTML
I saved Using rel=preload for responsive images
I wrote about Multiple forms per route in Remix
I saved How to avoid layout shifts caused by web fonts
I saved “Guys, we’re doing pagination wrong…”
I saved Why Remix doesn’t infer types from loaders for useLoaderData
I published how to Add returnTo behavior to Remix Auth
I saved Survivorship Bias in Web Performance
I wrote about Building a Command Palette with Remix and Tailwind UI
I published how to Share session and cookies between Next and Remix
I published how to Fix double data request when prefetching in Remix
I saved The "best" way to manage icons in React.js
I published how to Run Tailwind and Remix in Parallel with PM2
I published how to Use Remix with socket.io
I published how to Generate a PDF in Remix with Resource Routes
I published how to Avoid waterfalls of queries in Remix loaders
I published how to Run Next and Remix on the same server
I wrote about HTTP vs. Server-side Cache in Remix
I wrote about Clase rápida de programación asíncrona
I wrote about On-Demand Hydration in Remix
I saved Live validation is problematic
I saved Stop building client-side forms
I wrote about Loader vs Route Cache Headers in Remix
I wrote about The useMatches hook in Remix
I wrote about Validating Remix forms with Constraints API
I published how to Test Remix loaders and actions
I published how to Use NProgress in a Remix app
I wrote about Result Objects in TS
I wrote about Dark Mode and Dark Context
I saved Why Decentralization Isn't as Important as You Think
I saved When You Stop Counting
I saved Why I Quit Google to Work for Myself
I published how to Use Fathom with Remix
I saved Don’t Build A General Purpose API To Power Your Own Front End
I saved Why You Should Never Use MongoDB
I saved A Case For Use Cases
I published how to Fix `gyp: No Xcode or CLT version detected!` error
I published how to Use Dependabot to keep Remix up-to-date
I wrote about Automatic Revalidation in Remix
I saved People read on the web
I saved Why we use progressive enhancement to build GOV.UK
I saved Building a resilient frontend using progressive enhancement
I saved I Want To Confirm a Prompt That We Stay Alert
I saved Browsers and Representation
I saved Google vs. the web
I saved Back to the Bad Old Days of the Web
I saved The Mythical Document Web
I saved Breaking the web forward
I saved Back to the Future with RSS
I saved Client-Side Architecture Basics
I saved Organizing App Logic with the Clean Architecture
I saved Implementing DTOs, Mappers and the Repository Pattern
I saved Screaming Architecture
I saved Better Software Design with Application Layer Use Cases
I saved Anemic Domain Model
I saved Value Objects - DDD w/ TypeScript
I saved iOS 15, Humane
I saved Don't overabstract your components
I wrote about Creating a PDF with React in the Browser
I saved Meta Theme Color and Trickery
I wrote about Sending data from layout to leaf routes in Remix
I wrote about Caching Remix Assets and Locales with a Service Worker
I wrote about Localizing Remix apps with i18next
I wrote about Adding CSRF protection to Remix
I published how to Load only the data you need in Remix
I wrote about Implementing Auth0 Login in Remix without Express
I wrote about Using TailwindCSS with Remix
I published how to Use ETags in Remix
I wrote about Jest Matchers for Remix responses
I wrote about Using Form Objects inside Remix actions
I wrote about Route protection in Remix with Policies
I published how to Redirect to the original URL inside a Remix action
I published how to Read search params with JS
I published how to Use ActiveModel::Serializer with non ActiveRecord object
I published how to Serialize list of items with ActiveModel::Serializer
I published how to Use serializers with JSON.stringify and JSON.parse
I published how to Force a locale in Rails I18n from the params
I wrote about Que es un bundler de JS
I wrote about Remix vs Next.js Comparison
I saved Imagining native skip links
I published how to Add missing `created_at` and `updated_at` columns in Rails
I saved Rails design patterns - The big picture
I wrote about How to rename a column in a Rails migration
I saved Before You memo()
I wrote about Usar variables de entorno en Next.js
I saved Implement a Skip Link for Navigation-Heavy Sites
I saved Meaningful Motion with Action-Driven Animation
I saved An Interactive Guide to CSS Transitions
I published how to Build your own RSS Reader
I published how to Keep Heading Levels Consistent with React Context
I saved Preload: What Is It Good For?
I saved The unreasonable effectiveness of simple HTML
I saved Open Peeps
I saved System Design 101
I saved A primer on investing for designers and developers
I wrote about About
I saved In Critical Defense of Frontend Develop
I saved Be Wary of Nesting Roles
I saved Accessible SVGs
I wrote about ¿Qué son Server Components de React y cómo se relacionan con SSR/SSG/ISR?
I wrote about 🔥 Pro Tip: Name your useEffect functions
I saved dotCSS 2019 - Sarah Dayan - In Defense of Utility-First CSS
I saved Alt-texts: The Ultimate Guide
I saved Polymorphic React Components in TypeScript
I saved CSS and Scalability
I wrote about Using MDX with Remote Content
I saved The UI and UX Tips Collection: Volume One.
I saved Practical React Query
I published how to Use TailwindCSS Typography with Dark Mode Styles
I saved Don't design for mobile
I saved Stop Using “Drop-down”
I saved Decoupling, Architecture and Teams
I saved The Lava Layer Anti-Pattern
I saved UI as an afterthought
I wrote about Todo lo que sé de SWR
I saved In 2020, what is "frontend" 🤨
I saved How React Query gives you almost everything you thought you needed GraphQL for
I saved Wormhole state management
I saved Todo el software está roto
I saved What is the Value of Browser Diversity?
I saved Margins and Composability in CSS
I saved Nailing Your First (Info-Product) Launch
I saved Defining Component APIs in React
I saved The Modern Front-End Design System Stack
I saved Building the New facebook.com with React, GraphQL and Relay
I saved Architecting UIs for Change
I saved When frontend means full stack
I saved Building a Button Part 2: Hover Interactions
I saved Building a Button Part 1: Press Events
I wrote about The States of the UI
I saved About HTML semantics and front-end architecture
I saved "Semantic" CSS
I saved CSS Utility Classes and "Separation of Concerns"
I saved Second-guessing the modern web
I saved A clean start for the web
I wrote about What I Use
I saved Writing Type-Safe Polymorphic React Components (Without Crashing TypeScript)
I saved Using SwiftUI's Spacer to Create Complex Layouts
I saved Most tech content is bullshit
I saved The Art of UI Skeletons
I saved How to Design a Web Application: Software Architecture 101
I saved Shared Hook State with SWR
I saved Testing in the Frontend World
I saved The Real Dark Web
I saved The Elements of UI Engineering
I saved frontend design, react, and a bridge over the great divide
I saved The Great Divide
I saved We have a problem with promises
I saved Taming the asynchronous beast with ES7
I saved The Fault in Our Tolerance: Accounting for Failures in React
I saved 7 Principles of Rich Web Applications
I saved 🌱 My blog is a digital garden, not a blog
I saved Shape Up: Stop Running in Circles and Ship Work that Matters
I saved How the Blog Broke the Web
I saved Turning the database inside-out with Apache Samza
I saved Design Systems and Front-End Architecture by Stuart Robson
I saved write on your own website
I saved Going Indie. Step 2: Reclaiming Content
I saved Just write
I saved The Documentation Compendium
I saved Why Text Buttons Hurt Mobile Usability
I saved Bulletproof node.js project architecture 🛡️
I saved The Power of Sensible Defaults
I saved HTML Reference
I saved CSS Reference
I saved The God Login
I saved Your Body Text Is Too Small
I saved Architecture as a burden
I saved The Architecture of Open Source Applications (Volume 2): Scalable Web Architecture and Distributed Systems
I saved Scaling React Server-Side Rendering
I saved Refactoring UI
I saved Cards
I saved Introducing Grial
I saved Aplicando estilos a Pulse Editor con styled-components
I saved Usando socket.io en aplicaciones de Next.js
I saved Depurando aplicaciones de Node.js v8.0.0
I saved Personalizando Babel.js en aplicaciones de Next.js
I saved Creando botones propios para Pulse Editor
I saved Te presentamos la nueva versión de Node.js
I saved Creando sitios estáticos con Next.js
I saved Implementando Pulse Editor
I saved Aplicación de escritorio Pulse
I saved Presentamos Pulse Editor
I saved Crea aplicaciones de escritorio con Electron y Next.js
I saved Implementa Progressive server-side render con Next.js
I saved Next.js, el futuro de las aplicaciones con React
I saved Manejo de dependencias JavaScript con Yarn
I saved Deploy y orquestación de microservicios con now.sh
I saved Introducción a JSON Web Tokens (JWT)
I saved ¿Qué es y para qué sirve Babel?
I saved Desarrollando aplicaciones de escritorio con Electron.js
I saved ¿Qué es una aplicación isomórfica?
I saved Crea microservicios en Node.js con micro.js
I saved Usando React.js en el servidor con Django
I saved Estado inmutable con Redux e Immutable.js
I saved Componentes de Alto Orden en React.js
I saved Obteniendo datos en aplicaciones de Redux
I saved Usando Redux en el servidor con Socket.io
I saved Creando código modular con ducks de Redux
I saved Renderizando aplicaciones de Redux en el servidor
I saved Manejo de errores en Redux.js
I saved Migrando a Redux
I saved Ruteo en aplicaciones de Redux y React.js
I saved Glosario de términos de Redux
I saved Estructura de archivos Ducks para Redux.js
I saved Pruebas unitarias en Redux.js
I saved Acciones asíncronas en Redux.js
I saved Middlewares en Redux.js
I wrote about Como me inicié en el desarrollo web
I wrote about When to Use Custom API Endpoints Instead of REST
I wrote about How I work with static assets in React apps
I wrote about How shallow: true works in Rails
I wrote about Build an Optimistic UI in React using SWR with useMutation
I wrote about Como organizo mis aplicaciones de React
I wrote about How I Organize React Applications
I wrote about Usa React.Suspense para controlar la carga de imagenes
I wrote about Data-Aware Components
I wrote about Collected Notes TS Client
I published how to Use SWR with Geolocation
I wrote about Using Collected Notes as CMS
I published how to Sync WebApp Session Status between Tabs with SWR
I published how to Sync SWR cache with Web Storage
I published how to Configure Google Suite MX records in Vercel
I published how to Report Web Vitals in Next.js
I published how to Use React.Suspense to wait for an image to load
I published how to Purge unused CSS with TailwindCSS
I published how to Setup a redirect inside a project deployed to Vercel
I published how to Use a scoped registry with Yarn
I wrote about Using Immer with SWR to mutate data
I wrote about Render as you Fetch Pattern in React with SWR
I wrote about Prefetching Data in a Next.js Application with SWR
I wrote about What Type of States Could You Find in a Client-Side Application?
I wrote about Using Tailwind with Next.js
I wrote about Using Suspense for Data Fetching Today with SWR
I wrote about Using Paginated Data with SWR
I wrote about Introduction to SWR
I published how to Automatically Publish to npm using GitHub Actions
I wrote about Feature Flags in React with Flagged
I wrote about Next.js File Structure
I wrote about Testing in Next.js: Dynamic Imports
I wrote about Redirects in Next.js, the Best Way
I wrote about Working with Forms in React without libraries
I wrote about Working with conditions and lists in React
I wrote about Introduction to React with the State and Effects hooks
I wrote about Introducing Contentz
I wrote about Career Titles and Levels in Tech
I wrote about Deploy de Contentz a Netlify
I wrote about Contentz es Omakase
I wrote about Conceptos básicos de JS: Array#forEach
I wrote about Cómo crear y publicar un módulo para npm
I wrote about Aplicaciones web con Zero Server
I wrote about Presentando Contentz
I wrote about Uso del prop children en React
I wrote about Componentes con Hijos Personalizables en React
I wrote about Composición de Componentes en React
I wrote about Tipos de datos en React
I wrote about Props con valores predefinidos en React
I wrote about Componente de React personalizables usando props
I wrote about Componentes con React
I wrote about Hola Mundo con React
I wrote about Cargando React desde un CDN
I wrote about Mi Static Site Generator ideal
I wrote about Automatización con Shell Scripts
I wrote about Conceptos básicos de JS: Array#push
I wrote about Conceptos básicos de JS: Array#filter
I wrote about Conceptos básicos de JS: Array#map
I wrote about Usando Generadores Asíncronos en JavaScript
I wrote about Carrusel de elementos dinámicos con React.js
I wrote about Scalable Real-Time Applications
I wrote about Aplicaciones Real-Time de Alta Escala
I wrote about React v16.6: lazy, memo y más
I wrote about Introducción a MDX
I wrote about Documentation, Lessons Learned
I wrote about Documentación, Lecciones Aprendidas
I wrote about ¿Cómo mantenerse actualizado con el ecosistema de JavaScript?
I wrote about Renderizando Markdown en React.js
I wrote about An Accessible Approach to Frontend Testing
I wrote about How to keep updated with the JavaScript ecosystem?
I wrote about Implementando un Servidor de GraphQL
I wrote about Bye Platzi, hi ▲ZEIT
I wrote about Ciclo de vida de un componente de React.js
I wrote about Mezclando flujos síncronos y asíncronos usando promesas en JavaScript
I wrote about Introducción a GraphQL
I wrote about Qué son y cómo funcionan las promesas en JavaScript
I wrote about Sobre el ecosistema y la fatiga de JavaScript
I wrote about Combinando React.js y Redux.js
I wrote about Introducción a Redux.js
I wrote about Compilando el Frontend con webpack
I wrote about Internacionalización con React.js y FormatJS
I wrote about Introducción a ECMAScript 2016/7
I wrote about Mi experiencia como estudiante de los cursos de Platzi
I wrote about Lo nuevo en React v0.14
I wrote about Usando ECMAScript 6 en tus tareas de Gulp
I wrote about Usando ECMAScript 6/2015 con Babel
I wrote about Buenas prácticas del desarrollo FrontEnd
I wrote about Renderizando React.js en el server con Express.js y react-engine
I wrote about ECMAScript 6: nueva sintaxis y características para JavaScript
I wrote about Cómo usar la etiqueta template en HTML5
I wrote about Automatización de tareas de frontend usando Gulp.js
I wrote about Uso de módulos en JavaScript con ECMAScript 6
I wrote about Escribiendo CSS de la forma correcta
I wrote about Definiendo conceptos - Closure y Scope en JavaScript
I wrote about Ventajas y desventajas de los pre-procesadores de CSS
I wrote about ¿Qué es Scrum? ¿Y cómo te ayuda trabajar?
I wrote about El módulo Flexbox de CSS3
I wrote about JavaScript orientado a objetos