Everything I know about good API design 🔗
https://www.seangoedecke.com/good-api-design/ [...]
a collection of dev rss feeds - blogroll
Posts
https://www.seangoedecke.com/good-api-design/ [...]
https://blog.senko.net/your-code-is-your-responsibility-even-if-ai-wrote-it [...]
https://nomeatproxy.com [...]
Route HTTP requests through Durable Objects placed near specific Cloudflare regions. [...]
Redirect trailing slashes and www hostnames to one canonical URL before routes run. [...]
Build a small gallery while learning Remix UI setup state, render closures, context, and manual updates. [...]
Use Remix client entries to hydrate one server-rendered UI island without hydrating the whole page. [...]
Multiple package entry points are useful when they protect real runtime and dependency boundaries. [...]
Shared packages work best when they encode stable boundaries, not when they become a dumping ground. [...]
Build smooth animated tab indicators using CSS variables, ResizeObserver, and MutationObserver. [...]
Compound components are useful when a component needs flexible structure without turning into prop soup. [...]
React Aria Components provide accessible foundations so you can focus on design. [...]
Build a copy button with visual feedback using the Clipboard API and React hooks. [...]
Create a server and client architecture for parsing and rendering Markdown with full type safety. [...]
Speed up responses by writing to cache in the background using waitUntil. [...]
Create a type-safe cache abstraction for Cloudflare KV with flexible cache keys and the cache-aside pattern. [...]
Render dates in the user's timezone on the server using client hints and cookies. [...]
Build a Remix UI mixin that toggles a native dialog from a document-level keyboard shortcut. [...]
https://takumi.kane.tw/ [...]
Use custom invoker commands to format selected textarea text as Markdown. [...]
Use custom --commands with a native command event listener and a React callback ref cleanup. [...]
Use show-popover, hide-popover, and toggle-popover to build a React user menu without state. [...]
Use request-close to let a dialog cancel closing before React handles the final result. [...]
Use command and commandfor to open a native dialog in React without useState or dialog libraries. [...]
https://www.jayfreestone.com/writing/share-the-policy-not-the-code/ [...]
https://gridlanes.webkit.org/ [...]
https://jjenzz.com/best-loading-states-are-no-loading-states/ [...]
https://performance.dev/how-is-linear-so-fast-a-technical-breakdown [...]
Create a small `iife` helper to use `if`, `try`/`catch`, and async code where JavaScript only accepts expressions. [...]
As software engineering becomes industrialized, writing code matters less than knowing what should be built. [...]
Abort stale `useFetcher().load()` requests on unmount so loaders and upstream fetches stop early. [...]
https://www.terrygodier.com/the-boring-internet [...]
https://wix-ux.com/when-life-gives-you-lemons-write-better-error-messages-46c5223e1a2f [...]
https://acceptmarkdown.com/ [...]
https://ghinda.com/blog/products/2020/domain-structure-for-saas-products.html [...]
https://tkdodo.eu/blog/the-vertical-codebase [...]
https://jakub.kr/writing/details-that-make-interfaces-feel-better [...]
https://bazza.dev/craft/2026/hit-area [...]
https://terriblesoftware.org/2026/03/03/nobody-gets-promoted-for-simplicity/ [...]
https://freek.dev/2900-why-i-dont-use-down-migrations [...]
https://buttondown.com/blog/2026-03-06-how-we-enabled-content-security-policy [...]
A term used to describe APIs that follow the principles of REST, using standard HTTP methods, stateless communication, and resource-based URLs to prov [...]
A standardized identifier used by HTTP to describe the format of a file or response, such as text/html, application/json, or image/png. [...]
A browser security rule that restricts scripts from interacting with resources from a different origin unless explicitly allowed through mechanisms su [...]
A browser security mechanism that controls whether a web page can request resources from a different origin than the one that served the page. [...]
A type of access token used in HTTP authentication where possession of the token grants access to protected resources, commonly sent in the Authorizat [...]
An identity layer built on top of OAuth2 that allows applications to authenticate users and obtain identity information through standardized tokens su [...]
An authorization framework that allows applications to obtain limited access to user resources on another service without requiring the user to share [...]
A query language and runtime for APIs that allows clients to request exactly the data they need from a server rather than receiving fixed responses fr [...]
An architectural style for building Web APIs where resources are accessed through standard HTTP methods such as GET, POST, PUT, PATCH, and DELETE. [...]
A markup language used to represent structured data in a hierarchical format, historically common in web services before JSON became dominant. [...]
A lightweight data format commonly used in APIs to exchange structured data between clients and servers in a format that is easy for humans to read an [...]
A cryptographic protocol used to secure communications over a network, commonly used by HTTPS and WSS to encrypt data between clients and servers. [...]
A core internet protocol that ensures reliable, ordered delivery of data between devices communicating over a network. [...]
The protocol responsible for addressing and routing packets across networks so data can travel from a source device to a destination device. [...]
A broader identifier used to identify a resource, which may include URLs or other naming schemes that reference resources without specifying their loc [...]
A standardized address used to locate resources on the web, specifying the protocol, domain, path, and optionally query parameters or fragments. [...]
A distributed system that translates human-readable domain names into IP addresses so browsers can locate servers on the internet. [...]
A network protocol used to transfer files between a client and a server, historically common for uploading website files to hosting servers. [...]
A stylesheet language used to control the presentation of HTML documents, including layout, colors, typography, spacing, and responsive design. [...]
The standard markup language used to structure content on the web, defining elements such as headings, paragraphs, links, images, and other page struc [...]
A secure version of HTTP that encrypts communication between a client and server using TLS, protecting data from interception or modification during t [...]
The application-layer protocol used for communication between web browsers and servers, defining how requests and responses are formatted and transmit [...]
The encrypted version of the WebSocket protocol, using TLS to provide secure real-time communication between a client and a server over the internet. [...]
An API exposed over HTTP that allows clients such as browsers or mobile applications to interact with backend services. [...]
Files such as images, fonts, stylesheets, and scripts that are served directly to the browser without server-side processing. [...]
The mechanism that determines which content or component should be displayed based on the current URL, either handled by the server or by client-side [...]
The process of generating the UI of an application from data and components, either on the server (SSR) or in the browser (CSR). [...]
A browser technology that allows a server to push real-time updates to the client over a single HTTP connection, commonly used for notifications and l [...]
A protocol that provides persistent, bidirectional communication between a client and a server, allowing real-time features such as chat, live updates [...]
A property of an operation where performing the same request multiple times produces the same result, commonly used in APIs to make retries safe. [...]
A distributed network of servers that cache and deliver static assets such as images, scripts, and stylesheets from locations geographically closer to [...]
A performance technique where responses or computed data are stored temporarily so future requests can be served faster without repeating the same com [...]
A technique used by APIs and servers to restrict how many requests a client can make within a given time period, protecting systems from abuse or over [...]
A mechanism where one system sends HTTP requests to another when specific events occur, allowing applications to receive real-time updates without pol [...]
A lightweight JavaScript runtime designed to run code at the edge of a CDN network, commonly used for Edge Functions and SSR close to the user. [...]
A React rendering model where components run on the server and send serialized UI to the client, reducing the amount of JavaScript needed in the brows [...]
A UX pattern where the interface updates immediately after a user action assuming the server operation will succeed, later reconciling the UI state wi [...]
A web development strategy where a website works with basic functionality using HTML and server responses, and enhances the experience with JavaScript [...]
An extension to the OAuth2 Authorization Code Flow that protects public clients from authorization code interception by requiring a one-time secret du [...]
A server that hosts protected resources and validates access tokens before granting access, commonly implemented as an API that trusts tokens issued b [...]
A server responsible for authenticating users and issuing tokens such as access tokens and refresh tokens, acting as the central authority in OAuth2 a [...]
A token used to obtain new access tokens from an Authorization Server without requiring the user to authenticate again, typically long-lived and store [...]
A credential issued by an Authorization Server that allows a client to access protected resources on a Resource Server, typically short-lived and incl [...]
A JSON document containing one or more JWKs, typically exposed through a public endpoint so Resource Servers can retrieve the keys required to validat [...]
A JSON representation of a cryptographic key used in web security systems, commonly published by Authorization Servers so other services can verify si [...]
A compact and self-contained token format used to securely transmit claims between parties, commonly used in authentication systems where an Authoriza [...]
A service that acts as a single entry point for multiple backend services, handling routing, authentication, rate limiting, and request transformation [...]
Small serverless functions that run at the edge of a CDN network close to users, often used for authentication, request rewriting, personalization, an [...]
A cloud computing model where applications run as short-lived functions managed by a platform, allowing developers to deploy code without managing ser [...]
An architectural style where an application is composed of multiple independent services that communicate over a network, each responsible for a speci [...]
An application architecture where the frontend, backend, and business logic are developed and deployed together as a single system rather than split a [...]
An architectural pattern where a backend service is built specifically for a particular frontend, aggregating data from multiple services and shaping [...]
A rendering strategy where SSR runs on edge runtimes located close to users, reducing latency compared to rendering requests in a centralized server o [...]
A variation of SSR where the server sends HTML to the browser in chunks as it is generated, allowing the browser to begin rendering the page before th [...]
An architecture where most of a page is static HTML but small interactive sections, called islands, are hydrated as independent components instead of [...]
A rendering strategy where only specific parts of a server-rendered page are hydrated with JavaScript instead of the entire document, reducing the amo [...]
The process where client-side JavaScript takes control of HTML generated by SSR, attaching event listeners and restoring application state so the page [...]
Access React Router's context from any function without passing it through every layer. [...]
https://signalvnoise.com/posts/1430-hire-managers-of-one [...]
Manage database lifecycle with React Router middleware, ensuring connections close even when errors occur. [...]
Scale your route organization as your app grows by splitting into multiple directories, each using flat routes internally. [...]
Protect your React Router app from CSRF attacks using browser Sec-Fetch headers in middleware. [...]
https://www.rivet.dev/blog/2025-02-16-sqlite-on-the-server-is-misunderstood/ [...]
Test your business logic, not your loaders and actions. Treat them as integration points and avoid mocking nightmares. [...]
https://ishadeed.com/article/too-early-breakpoint/ [...]
https://pawelgrzybek.com/more-invoker-commands-and-more-reasons-not-to-use-javascript-please/ [...]
https://github.com/sergiodxa/agent-skills [...]
https://paulmakeswebsites.com/writing/shadcn-radio-button/ [...]
https://fractaledmind.com/2025/12/01/ui-affordances/ [...]
https://fractaledmind.com/2025/12/16/turbo-confirm-dialogs-without-javascript/ [...]
https://fractaledmind.com/2025/12/18/stylish-dialogs/ [...]
https://loggingsucks.com/ [...]
https://bvisness.me/microlibraries/ [...]
https://www.stacking.dev/ [...]
https://www.youtube.com/watch?v=4KvbVq3Eg5w [...]
https://jasonlbeggs.com/blog/tips-for-good-ui-implementation [...]
Prevent duplicate API calls in React Router loaders using Remix Utils Batcher middleware for better performance. [...]
Transform form data to database objects and back using actions and loaders with proper separation of concerns. [...]
https://outbox.matthewphillips.info/archive/perils-of-reactivity [...]
Understanding MVC, MVT, MVVM, and Component architectures through responsibility separation and data flow in modern web applications. [...]
Create a master-detail interface that adapts based on how users access it, full context when browsing, focused when direct. [...]
Learn how React Router's built-in deduplication system uses references to eliminate duplicate data transmission when combining promises in y [...]
https://www.otherbranch.com/shared/blog/no-you-dont-want-to-hire-the-best-engineers [...]
Learn how to use a nested index route with a clientLoader in React Router to conditionally redirect based on screen size, ensuring a smooth [...]
Learn how React Suspense boundaries can cause or prevent data loading waterfalls, the difference between nested and sibling boundaries, and [...]
Three approaches to handle deferred promises in React Router v7: Await component, React.use hook, and direct promise rendering. [...]
Learn how to structure server and client actions in React Router using a clear and scalable pattern. Centralize logic, handle forms, manage [...]
https://kyleshevlin.com/prefer-gaps-to-margins/ [...]
https://www.bram.us/2024/02/18/custom-highlight-api-for-syntax-highlighting/ [...]
https://shopify.engineering/resilient-import-maps [...]
https://maxschmitt.me/posts/toasts-bad-ux [...]
https://xyproblem.info/ [...]
https://dontasktoask.com/ [...]
https://www.neverjust.net/ [...]
Add a color scheme toggle to your React Router app using cookies for persistent, flash-free light, dark, or system preference. [...]
https://overreacted.io/jsx-over-the-wire/ [...]
https://philcalcado.com/2015/09/18/the_back_end_for_front_end_pattern_bff.html [...]
Debounce loaders and actions in React Router at the route level—cleaner code, better control, no extra wrappers needed. [...]
Use client_id and client_secret to authenticate your app with the Authorization Server in OAuth2 flows. [...]
Learn how to use the introspection endpoint in OAuth2 to validate opaque tokens and extract user and scope information. [...]
Learn how to securely revoke refresh tokens in OAuth2 and prevent unauthorized access after logout or token compromise. [...]
Learn how to securely implement PKCE in the OAuth2 Authorization Code flow and why it’s useful for public and server-rendered apps. [...]
Learn how to add custom claims to JWT access tokens in OAuth2 without exposing sensitive data. [...]
Learn how to validate exp, iat, and nbf claims in JWT access tokens to ensure your API only accepts valid tokens. [...]
Learn how to use the scope claim in OAuth2 access tokens to authorize actions in your API with fine-grained permissions. [...]
Learn how to verify JWT access tokens securely using JWKS, without hitting your Authorization Server on every request. [...]
JWTs used as OAuth2 access tokens contain claims that define identity, security, and permissions. Learn how to use and validate them. [...]
OAuth2 scopes define what an app can do with your data. Learn how they work, best practices, and how to enforce them in your API. [...]
Create a per-request singleton in React Router middleware to optimize request-based caching and batching without persistent global state. [...]
Learn how to test React Router middleware using Bun Test, mock requests, and validate session handling in just a few simple steps. [...]
OAuth2 uses Access, Refresh, and ID Tokens, each with a distinct role. Learn how they work and how to store them securely. [...]
The OAuth2 audience (aud) claim ensures tokens are used only by the right APIs. Learn how it works and why it matters. [...]
JWTs offer fast, stateless authentication, while opaque tokens provide better revocation control. Which one should you use? [...]
Enable middleware in React Router 7.3.0 to intercept requests and enhance loaders and actions on both server and client. [...]
https://programmingarehard.com/2025/01/13/maybe-dont-navigate-1.html/ [...]
Securely handle OAuth2 in a Backend-for-Frontend (BFF) with React Router, keeping tokens off the frontend for better security [...]
https://www.campsite.com/blog/class-methods-are-rubys-useeffect [...]
https://danphilibin.com/what-i-learned-at-campsite [...]
Throwing vs. returning redirects in React Router: understand when to use each, how they work, and how to handle them properly [...]
https://github.com/t3dotgg/stripe-recommendations [...]
https://dev.37signals.com/domain-driven-boldness/ [...]
https://dev.37signals.com/good-concerns/ [...]
https://dev.37signals.com/vanilla-rails-is-plenty/ [...]
https://dev.37signals.com/active-record-nice-and-blended/ [...]
https://dev.37signals.com/globals-callbacks-and-other-sacrileges/ [...]
https://michellelim.dev/writing/stop-using-frontend-backend/ [...]
Learn how to populate your Rails database with fixtures for testing and development. [...]
https://ryanflorence.com/blog/you-cant-not-have-a-framework.html [...]
https://aaronfrancis.com/2024/this-doesnt-warrant-a-blog-post-40142b06 [...]
https://aaronfrancis.com/2024/because-i-wanted-to-12c5137c [...]
https://sergiodxa.com/articles/making-web-component-good-enough [...]
https://martinjoo.dev/layered-architectures-with-laravel [...]
https://kettanaito.com/blog/dont-sleep-on-abort-controller [...]
Learn to display a toast notification after a Remix action by utilizing the clientAction function to ensure consistent user feedback. [...]
https://alexkondov.com/full-stack-tao-proper-rest-api/ [...]
https://pilcrowonpaper.com/blog/how-i-would-do-auth/ [...]
https://www.abjt.dev/lab/card-stack [...]
https://benv.ca/blog/posts/counterscale-and-the-new-self-hosted [...]
https://sergiodxa.com/articles/on-frontend-vs-backend [...]
https://sergiodxa.com/articles/when-to-use-route-modal-in-react-router [...]
https://shopify.engineering/deconstructing-monolith-designing-software-maximizes-developer-productivity [...]
https://www.flightcontrol.dev/blog/ultimate-guide-to-multi-tenant-saas-data-modeling [...]
https://argos-ci.com/blog/react-aria-migration [...]
https://react-spectrum.adobe.com/blog/creating-a-pointer-friendly-submenu-experience.html [...]
https://height.app/blog/guide-to-build-context-menus [...]
https://frontendmastery.com/posts/building-future-facing-frontend-architectures/ [...]
https://frontendmastery.com/posts/navigating-the-future-of-frontend/ [...]
https://mxstbr.com/thoughts/margin/ [...]
https://tonsky.me/blog/checkbox/ [...]
https://thecopenhagenbook.com/ [...]
https://cognitect.com/blog/2011/11/15/documenting-architecture-decisions [...]
A development-time compiler feature where the data used by an application is replaced at runtime without reloading the application and losing any in-m [...]
A development-time compiler feature where the code is replaced at runtime without reloading the application or server and losing any in-memory state. [...]
An application rendering strategy where SSG is used in combination with SSR to generate at build time the static parts of an HTML document and then us [...]
An application rendering strategy where SSG is used combined with SSR to update or generate new static HTML files at runtime without re-building the a [...]
An application rendering strategy where the server generates static HTML files at build time instead of runtime. Updating those static files require a [...]
A progressively enhanced SPA that uses SSR on document requests, and after JS loads start working as a SPA, while most if not all of the behavior can [...]
A progressively enhanced MPA that uses JS, general navigation happens like a MPA but in-page changes happens with or without JS to fetch more data as [...]
Use useRouteLoaderData hook to access route loader data inside ErrorBoundary components when handling errors. [...]
Access loader data from entry.client.tsx using the global window.__reactRouterContext object before hydrating your app. [...]
Store user language preferences in cookies to persist locale selections across sessions using middleware. [...]
https://arkwright.github.io/parallelized-decision-making.html [...]
@markdoc/markdoc@0.4.0 [...]
Code interface used to interact with an application. It can go from a function in a library, a method in the runtime of the code to an HTTP based one [...]
An application navigation strategy where the navigation between routes/views happens by requesting a new document from the server. [...]
An application navigation strategy where the navigation between routes/views of the application happens client-side without creating a new document re [...]
An application rendering strategy where the rendering happens in a client, typically the browser, in the same process event listeners are attached to [...]
An application rendering strategy where the rendering happens in a server, typically at runtime when a new render is requested. [...]
https://www.learnwithjason.dev/blog/i-miss-rss/ [...]
https://bobaekang.com/blog/rsc-is-react-server-plus-component/ [...]
Forward browser cookies to external APIs by passing request headers through fetch calls. [...]
Use clientLoader to prevent server loader execution during client-side navigation while keeping it on document requests. [...]
https://www.youtube.com/watch?v=cPwsNEkScoQ [...]
https://www.youtube.com/playlist?list=PLXoynULbYuEApkwAGZ7U7LmL-BDHloB0l [...]
https://www.youtube.com/playlist?list=PLXoynULbYuED9b2k5LS44v9TQjfXifwNu [...]
https://ishadeed.com/article/target-size/ [...]
https://blog.cassidoo.co/post/annoyed-at-react/ [...]
https://macwright.com/2024/01/03/miffed-about-react [...]
https://jakelazaroff.com/words/the-website-vs-web-app-dichotomy-doesnt-exist/ [...]
https://gilest.org/indie-easy.html [...]
https://kettanaito.com/blog/why-fetch-promise-doesnt-reject-on-error-responses [...]
https://blog.jim-nielsen.com/2022/well-known-links-resource/ [...]
https://blog.jim-nielsen.com/2022/other-peoples-websites/ [...]
https://blog.jim-nielsen.com/2022/browser-level-color-scheme-preference/ [...]
https://blog.jim-nielsen.com/2023/well-known-avatar/ [...]
https://react-spectrum.adobe.com/react-aria/ [...]
https://www.epicweb.dev/stop-lying-to-your-users [...]
If you're using Remix, you can ask it to prefetch the data of a new route using Link's prefetch prop, but if you need to use `fetcher.loa… [...]
Using the useRevalidator hook we can revalidate our loader data on an interval to ensure that our data is always fresh. How fresh can depe… [...]
If you're building a Remix web app, and then you decide to expose an API from that app, you may be tempted to try to reuse the same routes … [...]
Learn how to access URL search params in React Router loaders and components using the URL and URLSearchParams APIs. [...]
If you want to add file upload to let users send you images, e.g., for an avatar, Remix provides a few (still unstable for some reason) too… [...]
Let's say you want to ensure a specific search param is always set. To do so, you can first check if the search param is set, and if not, r… [...]
If you're using Remix, you may have noticed that the loader data is not passed to the components as props. This is because the loader data … [...]
Let's say you're writing a loader that needs to do a fetch call to get some data, something simple just for the example: ```ts import { js… [...]
If you have a parameter like the locale `/:locale/*` that you want to get in entry.server for any reason, you can use the `EntryContext` ob… [...]
If you want to ensure your webs have the correct meta tags like the title, description, Open Graph or Twitter Cards. We can test the title… [...]
https://jjenzz.com/making-component-fetching-the-exception/ [...]
https://buildexcellentwebsit.es/ [...]
https://viewports.fyi/ [...]
https://alemtuzlak.hashnode.dev/my-thoughts-on-open-source [...]
When using something like `useRouteLoaderData()` we need to provide the route ID of the route we want to get the data from. This could als… [...]
Remix gives us two ways to work with assets, we can import them directly and get a string to the hashed file path, or we can place the file… [...]
Let's say we want to build a custom Form component for our application, this Form will do things inside like rendering a hidden input with … [...]
Let's say we're building a search form that needs to keep the value on the search params as the user type. We could directly update on the… [...]
https://chriscoyier.net/2023/07/01/social-rss/ [...]
https://werd.io/2022/the-fediverse-and-the-indieweb [...]
https://seirdy.one/notes/2022/11/20/blogging-as-dry/ [...]
https://christoph-rumpel.com/2023/3/everything-you-can-test-in-your-laravel-application [...]
https://reactflow.dev/blog/asking-for-money-for-open-source/ [...]
https://vadimdemedes.com/posts/dont-make-me-think-or-why-i-switched-to-rails-from-javascript-spas [...]
https://vadimdemedes.com/posts/generating-income-from-open-source [...]
Share data between React Router loaders efficiently using TanStack Query to avoid duplicate fetches and improve performance. [...]
If you're using Remix Auth together with Auth0, you may found out that if you just use the logout method from Remix Auth and try to login a… [...]
If you're creating route in Remix that needs to send a file from you may want to use `node:fs` to get the file content from the system and … [...]
If you have a form with one or more uncontrolled inputs you may have seen the case where the user submits the form but the inputs are not c… [...]
The traditional way to parse a form body in Remix is by using `request.formData()` to get a new FormData object, then use `formData.get()` … [...]
While [there's a proposal to add support for this](https://github.com/remix-run/remix/discussions/1959#discussioncomment-2205718), right no… [...]
Set multiple Set-Cookie headers in loader responses using header arrays or the Headers.append method. [...]
If you're using SSE in a Remix app, you may find you want to be able to close the connection from the server. The [Remix Utils `eventStrea… [...]
Add performance measurements to response headers to inspect route timing from the browser DevTools. [...]
When you use Remix's session feature you have to always remember to commit your session before sending the response. This is a simpler fun… [...]
https://molily.de/javascript-criticism/ [...]
If you're testing a feature that depends on Caps Lock to be on, e.g. detect Caps Lock and warn on password inputs. You can test this works … [...]
https://sophiebits.com/2020/01/01/fast-maintainable-db-patterns.html [...]
If we have set a cookie and we need to tell the browser to delete it, we can do that with a simple trick, we can set the cookie value to an… [...]
If you came to Remix from the Next.js world, you might wonder how to use SSG and ISR with Remix. The framework doesn't support it; instead… [...]
When Google crawls your website, it will try to execute all the JavaScript it finds. And even if your app… [...]
If for any reason, you want to add AMP to your Remix app, there are a few things you need to do. First, go to your `app/root… [...]
Remix always does SSR on document requests. Then it works as an MPA until JS loads and React hydrates your app. At that … [...]
https://www.htmhell.dev/adventcalendar/2022/21/ [...]
Detect the Save-Data header and conditionally disable client-side JavaScript to reduce data usage. [...]
Rolling sessions is a technique to extend the maxAge of a session cookie by resetting the cookie's expiration date… [...]
Using Server-Sent Events (SSE) you can keep a connection between a browser (client) and an HTTP server open an… [...]
Support both JavaScript and no-JavaScript users by detecting hydration state in fetcher forms. [...]
Use process.env client-side with Remix The process.env thing is a Node.js-only feature that many front-end developers adopted as something t… [...]
Let's say you have a form with a few inputs. You want to persist the inputs' values after submitting… [...]
https://www.builder.io/blog/streaming-is-it-worth-it [...]
https://www.simeongriggs.dev/components-considered-harmful-for-content [...]
When you code a loader/action (we'll call them data functions from now) in Remix, you can either retur… [...]
Suppose we want to create a timeline component that lists different events. Each event type has a unique com… [...]
https://dinosaurs-with-jetpacks.com/posts/react-problems [...]
https://bradgarropy.com/blog/remix-simplifies-things [...]
https://jjenzz.com/progressively-enhance-for-a-more-resilient-web [...]
https://acko.net/blog/get-in-zoomer-we-re-saving-react/ [...]
Let's say we have a URL structure like this: /:category/products /products Both routes need to work… [...]
Set flash messages while destroying user sessions using cookie or database session storage. [...]
The Remix approach to submitting forms is to replace the <form> tag with their <Form> compone… [...]
Remix gives us a useful redirect helper function which lets us quickly create a new redirect Respon… [...]
React introduced a one-way data flow where a parent component has some data (state) and passes it to the children… [...]
Next.js released its new nested routes feature yesterday (Friday, 9th September). One of the things they … [...]
https://www.swyx.io/smart-indexes [...]
https://medium.com/@mandy.michael/building-websites-for-safari-reader-mode-and-other-reading-apps-1562913c86c9 [...]
https://css-tricks.com/how-to-section-your-html/ [...]
https://css-tricks.com/block-links-the-search-for-a-perfect-solution/ [...]
Markdoc is this new Markdown parser by Stripe, and it's a simple to use yet extendable library we can use i… [...]
Dependency Injection is a way our function or class can receieve from the caller the instancie… [...]
Zod is a great library to do schema based validations and get fully typed objects as a result. Environmen… [...]
https://gist.github.com/kiliman/a9d7c874af03369a1d105a92560d89e9 [...]
When using an external API, you may need to keep an access token to send a request as a user. And a refresh… [...]
https://trentwalton.com/2014/03/10/device-agnostic/ [...]
Vitest is a testing framework, similar to Jest, but way faster, built on top of Vite, which uses esbuil… [...]
If you're building some page like a landing with some images, you may want to optimize how these images l… [...]
https://www.bronco.co.uk/our-ideas/using-relpreload-for-responsive-images/ [...]
Suppose you have a complex enough Remix application. In that case, you may have reached the point where a sing… [...]
https://simonhearne.com/2021/layout-shifts-webfonts/ [...]
https://hackernoon.com/guys-were-doing-pagination-wrong-f6c18a91b232 [...]
https://github.com/remix-run/remix/pull/1254#issuecomment-1034475233 [...]
If you're using Remix Auth, you may want to add support to return the user to where it was before redirectin… [...]
https://simonhearne.com/2022/survorship-bias-in-webperf/ [...]
Recently, the Tailwind Labs team published a new Combobox component on Headless UI and use… [...]
I have been migrating a Next.js app to Remix for a few months. I already wrote how to run them … [...]
Suppose you rendered a <Link prefetch="intent" /> component in your UI with the idea of pref… [...]
https://benadam.me/thoughts/react-svg-sprites [...]
If you use Remix together Tailwind (and you should!), you may have found out that you need to run th… [...]
If you want to add real-time capabilities to your Remix app without using an external service, the easiest way is proba… [...]
Remix has a feature called Resource Routes which let you create endpoints returning anything. Usin… [...]
Remix does a fantastic job of avoiding waterfalls everywhere. It preloads assets. It downloads JS a… [...]
If you want to migrate a Next app to Remix, you may be tempted to do a complete migration. Still, if your … [...]
When you build a web application, you may reach a point where some performance problems could be solved by a… [...]
El código síncrono se ejecuta una linea a la vez, cierto? Entonces si haces esto: let result = fn(… [...]
Remix makes it really easy to don't send JS to the browser. It even has a guide on how to let routes statically def… [...]
https://adamsilver.io/blog/live-validation-is-problematic/ [...]
https://blog.vararu.org/stop-building-client-side-forms [...]
Document Request So, let's say you have a route at /my-super-route, and there you have a loader fun… [...]
If you use Remix, there's a hook that you can use called useMatches, this hook is a way to access some internal d… [...]
The Constraints API is a browser API that has been available since the times of IE10, yep, that old.… [...]
If you are using Remix, most of your application code will live in the loaders and actions instead of React compo… [...]
Remix's philosophy is to kill all the spinner! This is amazing, but sometimes it's not possible. Connections may be… [...]
Build resilient TypeScript apps that handle failures gracefully using the Result pattern to make errors explicit in your types. [...]
Most of the time, there is two way to implement dark mode support in an application. Using media queries with `pre… [...]
https://haseebq.com/why-decentralization-isnt-as-important-as-you-think/ [...]
https://www.getrevue.co/profile/swyx/issues/swyx-io-when-you-stop-counting-794799 [...]
https://mtlynch.io/why-i-quit-google/ [...]
If you want to use Fathom for your analytics and use Remix to build your app, you can configure it to work quite quickly. … [...]
https://max.engineer/server-informed-ui [...]
http://www.sarahmei.com/blog/2013/11/11/why-you-should-never-use-mongodb/ [...]
https://webuild.envato.com/blog/a-case-for-use-cases/ [...]
Fix gyp: No Xcode or CLT version detected! error If you have this error, and you running xcode-select --install tells you you have them inst… [...]
If you use Dependabot to keep your project dependencies up-to-date, and if you use Remix you may have no… [...]
If you have used SWR or React Query, you may be used to a feature both libraries have called automatic revalidat… [...]
https://uxmyths.com/post/647473628/myth-people-read-on-the-web [...]
https://technology.blog.gov.uk/2016/09/19/why-we-use-progressive-enhancement-to-build-gov-uk/ [...]
https://www.gov.uk/service-manual/technology/using-progressive-enhancement [...]
https://blog.jim-nielsen.com/2021/confirm-a-prompt-we-stay-alert/ [...]
https://blog.jim-nielsen.com/2021/browsers-and-representation/ [...]
https://gomakethings.com/google-vs.-the-web/ [...]
https://jarango.com/2021/07/02/back-to-the-bad-old-days-of-the-web/ [...]
https://www.milezero.org/index.php/tech/web/the_mythical_document_web.html [...]
https://www.quirksmode.org/blog/archives/2021/08/breaking_the_we.html [...]
https://ncase.me/rss/ [...]
https://khalilstemmler.com/articles/client-side-architecture/introduction/ [...]
https://khalilstemmler.com/articles/software-design-architecture/organizing-app-logic/ [...]
https://khalilstemmler.com/articles/typescript-domain-driven-design/repository-dto-mapper/ [...]
https://blog.cleancoder.com/uncle-bob/2011/09/30/Screaming-Architecture.html [...]
https://khalilstemmler.com/articles/enterprise-typescript-nodejs/application-layer-use-cases/ [...]
https://khalilstemmler.com/wiki/anemic-domain-model/ [...]
https://khalilstemmler.com/articles/typescript-value-object/ [...]
https://potential.app/ios-15-humane [...]
https://kirjai.com/component-abstraction/ [...]
If you need to generate a PDF for your users, maybe some reports or a document you want users to be abl… [...]
https://css-tricks.com/meta-theme-color-and-trickery/ [...]
Hey! This is outdated, Remix Outlet component now supports sending data to leaf routes using … [...]
A Remix app is by default fast, the framework optimize a lot how the required resources for a page are loaded s… [...]
There's a lot if libraries to implement i18n in JS and React, and i18next is one of the most popular out ther… [...]
While you may not need CSRF if your cookies have the SameSite: Lax configured, it may still be a good idea to … [...]
If you are used to build SPA and your APIs are REST you probably have found the issue with over fetching, t… [...]
While this works, I recommend you to don't do all of this yourself, instead use Remix Auth with… [...]
Let's see how to do the setup of TailwindCSS for a project using Remix. Install Tailwind The first thing we ne… [...]
ETags are strings used to identify a particular version of a resource. If the URL is the identity of a resource the ETag is t… [...]
When testing the logic of an action in Remix, or any function returning a Response, even a Fetch API Response,… [...]
In Remix, each route can export a single action function used to handle any non GET request received b… [...]
A Policy is a design pattern used to define authorization rules that can be re-used easily across an app… [...]
Let's say the user is currently at the URL /:username, and there's a button to follow that … [...]
If you need to read the search params (aka query string) from a URL in JS the most common way is to use one of the mu… [...]
If you are trying to serialize an object which is not an instance of ActiveRecord, when… [...]
Most of the them, when working on Rails with ActiveModel::Serializer you will do something … [...]
If you are working with an API which expects and returns keys without using camelCase, e.g if… [...]
If you want to change the local used for internationalization a single time from the params of the … [...]
Para entender esto es un poco útil que aprendan como funcionaban las dependencias antes, hace mucho tiempo atrás (unos 6… [...]
I have been using Next for years, since the v1 was released, I even become an early contributor of the framework and… [...]
https://kittygiraudel.com/2021/03/07/imagining-native-skip-links/ [...]
Add missing created_at and updated_at columns in Rails If, like me, you forgot to add the t.timestamps when creating a new table, you may … [...]
https://longliveruby.com/articles/rails-design-patterns-the-big-picture [...]
If, for some reason, you need to rename a column in a table you need to create a new migration and r… [...]
https://overreacted.io/before-you-memo/ [...]
Las variables de entorno nos permiten configurar como un software se ejecuta dependiendo de la computadora … [...]
https://www.benmyers.dev/blog/skip-links/ [...]
https://tobiasahlin.com/blog/meaningful-motion-w-action-driven-animation/ [...]
https://www.joshwcomeau.com/animation/css-transitions/ [...]
RSS is a standard way to use XML to share content from a website so other apps could read it and show it in a differen… [...]
When building for the web one of the most common elements are the heading tags (h1 to h6) … [...]
https://www.smashingmagazine.com/2016/02/preload-what-is-it-good-for/ [...]
https://shkspr.mobi/blog/2021/01/the-unreasonable-effectiveness-of-simple-html/ [...]
https://www.openpeeps.com/ [...]
https://stanete.com/system-design-101 [...]
https://brianlovin.com/overthought/investing-for-designers-and-developers [...]
A photo of me Hi there! I'm a web developer currently based on Lima, Perú. I'm currently working in Silverback Ventures as the web devel… [...]
https://meiert.com/en/blog/critical-frontend-development/ [...]
https://adrianroselli.com/2016/12/be-wary-of-nesting-roles.html [...]
https://css-tricks.com/accessible-svgs/ [...]
Ayer el team de React… [...]
When creating an effect in React, avoid arrow function and instead use a function with a name. This wil… [...]
https://youtu.be/R50q4NES6Iw [...]
https://axesslab.com/alt-texts/ [...]
https://www.benmvp.com/blog/polymorphic-react-components-typescript/ [...]
http://mrmrs.io/writing/2016/03/24/scalable-css/ [...]
One of the most common ways to use MDX in a website is to have the .mdx files together with the rest of the webs… [...]
https://marcandrew.me/ui-ux-tips-collection-vol-one/ [...]
https://tkdodo.eu/blog/practical-react-query [...]
Since TailwindCSS v2 it comes with dark mode support. Enabling it is really simple, in the `tai… [...]
https://mattanddesign.com/dont-design-for-mobile/ [...]
https://adrianroselli.com/2020/03/stop-using-drop-down.html [...]
http://mikehadlow.blogspot.com/2018/11/decoupling-architecture-and-teams.html [...]
http://mikehadlow.blogspot.com/2014/12/the-lava-layer-anti-pattern.html [...]
https://michel.codes/blogs/ui-as-an-afterthought [...]
Conceptos Básicos Introducción En este artículo muy largo vamos a ver como usar esta librería para trabajar con d… [...]
https://swizec.com/blog/in-2020-what-is-frontend/ [...]
https://swizec.com/blog/how-react-query-gives-you-almost-everything-you-thought-you-needed-graphql-for/ [...]
https://swizec.com/blog/wormhole-state-management/ [...]
https://youtu.be/0riSpvps4mA [...]
https://daverupert.com/2020/09/the-value-of-browser-diversity/ [...]
https://giuseppegurgone.com/margins-and-composability-in-css/ [...]
https://microconf.gen.co/adam-wathan/ [...]
https://jxnblk.com/blog/defining-component-apis-in-react/ [...]
https://jxnblk.com/blog/the-modern-front-end-design-system/ [...]
https://developers.facebook.com/videos/2019/building-the-new-facebookcom-with-react-graphql-and-relay/ [...]
https://joreteg.com/blog/architecting-uis-for-change [...]
https://increment.com/frontend/when-frontend-means-full-stack/ [...]
https://react-spectrum.adobe.com/blog/building-a-button-part-2.html [...]
https://react-spectrum.adobe.com/blog/building-a-button-part-1.html [...]
Let's say you are in charge of building the UI of Twitter, how many states do you think that UI … [...]
http://nicolasgallagher.com/about-html-semantics-front-end-architecture/ [...]
https://adamwathan.me/2014/11/10/semantic-css/ [...]
https://adamwathan.me/css-utility-classes-and-separation-of-concerns/ [...]
https://macwright.com/2020/05/10/spa-fatigue.html [...]
https://macwright.com/2020/08/22/clean-starts-for-the-web.html [...]
This is my current development setup. Tech Stack TypeSc… [...]
https://blog.andrewbran.ch/polymorphic-react-components/ [...]
https://benmcmahen.com/using-spacer-in-swiftui/ [...]
https://www.aleksandra.codes/tech-content-consumer [...]
http://farmdev.com/thoughts/108/the-art-of-ui-skeletons/ [...]
https://dev.to/educative/how-to-design-a-web-application-software-architecture-101-188b [...]
https://paco.im/blog/shared-hook-state-with-swr [...]
https://www.youtube.com/watch?v=sOMAMtOBiA8 [...]
https://www.sonniesedge.net/posts/real-dark-web/ [...]
https://overreacted.io/the-elements-of-ui-engineering/ [...]
http://bradfrost.com/blog/post/frontend-design-react-and-a-bridge-over-the-great-divide/ [...]
https://css-tricks.com/the-great-divide/ [...]
https://pouchdb.com/2015/05/18/we-have-a-problem-with-promises.html [...]
https://pouchdb.com/2015/03/05/taming-the-async-beast-with-es7.html [...]
https://aweary.dev/fault-tolerance-react/ [...]
https://rauchg.com/2014/7-principles-of-rich-web-applications/ [...]
https://joelhooks.com/digital-garden [...]
https://basecamp.com/shapeup [...]
https://stackingthebricks.com/how-blogs-broke-the-web/ [...]
https://www.confluent.io/blog/turning-the-database-inside-out-with-apache-samza/ [...]
https://noti.st/sturobson/yc1gwN/design-systems-and-front-end-architecture#saPZSRV [...]
https://css-tricks.com/how-to-section-your-html/ [...]
https://bradfrost.com/blog/post/write-on-your-own-website/ [...]
https://matthiasott.com/articles/going-indie-reclaiming-content [...]
https://www.sarasoueidan.com/desk/just-write/ [...]
https://github.com/kylelobo/The-Documentation-Compendium [...]
https://uxmovement.com/mobile/why-text-buttons-hurt-mobile-usability/ [...]
https://softwareontheroad.com/ideal-nodejs-project-structure/ [...]
https://stevebennett.co/2017/07/24/the-power-of-sensible-defaults/ [...]
https://htmlreference.io/ [...]
https://cssreference.io/ [...]
https://blog.codinghorror.com/the-god-login/ [...]
https://blog.marvelapp.com/body-text-small/ [...]
https://dev.to/schreiber_chris/architecture-as-a-burden-18ca [...]
https://www.aosabook.org/en/distsys.html [...]
https://arkwright.github.io/scaling-react-server-side-rendering.html [...]
https://refactoringui.com/ [...]
https://medium.com/@sergiodxa/introducing-grial-js-6c414d6dc947 [...]
https://platzi.com/blog/aplicando-estilos-a-pulse-editor-con-styled-components/ [...]
https://platzi.com/blog/usando-socketio-en-aplicaciones-de-nextjs/ [...]
https://platzi.com/blog/depurando-aplicaciones-de-nodejs-v800/ [...]
https://platzi.com/blog/personalizando-babeljs-en-aplicaciones-de-nextjs/ [...]
https://platzi.com/blog/creando-botones-propios-para-pulse-editor/ [...]
https://platzi.com/blog/nueva-version-nodejs-npm/ [...]
https://platzi.com/blog/creando-sitios-estaticos-con-nextjs/ [...]
https://platzi.com/blog/implementando-pulse-editor/ [...]
https://platzi.com/blog/aplicacion-de-escritorio-pulse/ [...]
https://platzi.com/blog/presentamos-pulse-editor/ [...]
https://platzi.com/blog/crea-aplicaciones-de-escritorio-con-electron-y-nextjs/ [...]
https://platzi.com/blog/progressive-server-side-render/ [...]
https://platzi.com/blog/nextjs-el-futuro-de-las-aplicaciones-con-react/ [...]
https://platzi.com/blog/manejo-de-dependencias-javascript-con-yarn/ [...]
https://platzi.com/blog/deploy-microservicios/ [...]
https://platzi.com/blog/introduccion-json-web-tokens/ [...]
https://platzi.com/blog/que-es-babel/ [...]
https://platzi.com/blog/aplicaciones-escritorio-electron-js/ [...]
https://platzi.com/blog/aplicaciones-isomorficas/ [...]
https://platzi.com/blog/microservicios-en-node-con-micro/ [...]
https://platzi.com/blog/react-js-en-servidor-con-django/ [...]
https://medium.com/react-redux/estado-inmutable-con-redux-e-immutable-js-5a3d69ef0451 [...]
https://medium.com/react-redux/react-componentes-alto-orden-2498211e933f [...]
https://medium.com/react-redux/obteniendo-datos-en-aplicaciones-de-redux-1007e8703521 [...]
https://medium.com/react-redux/wip-usando-redux-en-el-servidor-con-socket-io-61e31242e366 [...]
https://medium.com/react-redux/creando-c%C3%B3digo-modular-con-ducks-de-redux-bfd7b67ff8c0 [...]
https://medium.com/react-redux/server-render-react-redux-1f6cb0b557c9 [...]
https://medium.com/react-redux/manejo-de-errores-en-redux-js-adf9dfa0129b [...]
https://medium.com/react-redux/migrando-a-redux-f7a15457a805 [...]
https://medium.com/react-redux/ruteo-en-aplicaciones-de-redux-y-react-js-d62de452bf1b [...]
https://medium.com/react-redux/glosario-de-t%C3%A9rminos-de-redux-c2bca005ca69 [...]
https://medium.com/react-redux/estructura-de-archivos-ducks-para-redux-js-36bb56a70cb3 [...]
https://medium.com/react-redux/pruebas-unitarias-en-redux-js-d7285c013123 [...]
https://medium.com/react-redux/acciones-as%C3%ADncronas-en-redux-js-d06e2514c4b8 [...]
https://medium.com/react-redux/middlewares-en-redux-js-88081fcd6c91 [...]
Corría el año 2002, tenía unos 10 años, un día me pregu… [...]
One of the most common architectural styles to build an HTTP API is… [...]
Most people when working with tools like webpack te… [...]
Learn how to create nested shallow resource routes in Rails [...]
Use the useMutation hook together with SWR to implement optimistic updates in your React components [...]
Hay muchas formas de organizar aplicaciones de React, con los años esta es la que más me ha convencido [...]
There are many ways to organize a React application, with the years this the the one I liked the most [...]
Aprende como usar React.Suspense para controlar el estado de carga de imágenes. [...]
Normalmente, al crear un app de React, un componente necesita un dato del API, ej. el usuario log… [...]
A TypeScript client for the Collected Notes API. TypeScript Support Types for the API returned value Types fo… [...]
Learn how to use SWR with the Geolocation WebAPI to show the user location in a map and keep it up-to-date with any change. [...]
Now that Collected Notes has an API to get the notes you wrote here it's possible to use it as a CMS (Content Manag… [...]
Implement a synced session status using SWR to keep the user logged in/out in all the tabs or windows [...]
Use Web Storage to retain SWR cache between page reloads [...]
Use Google Suite with a domain whose NS records is in Vercel [...]
Measure the performance of our Next.js application with Web Vitals [...]
Learn how to use React.Suspense to handle the loading state of an image. [...]
Learn how to use the built-in purge support of Tailwind to remove unused classes in production. [...]
Learn how you can create a redirect in any project deployed to the Vercel platform. [...]
Learn how you can configure Yarn to use a different registry for scoped packages [...]
Use Immer to make optimistic UI updates with SWR easier to follow [...]
Learn how to use the Render as you Fetch pattern with React and SWR. [...]
Optimizing the performance of a Next.js using SWR and data prefetching. [...]
Client-Side Applications could have different types of states based on the requirements, let's dig through them and learn their differences. [...]
Learn how to use Tailwind in a Next.js application. [...]
Learn how to use SWR for data fetching with Suspense to handle loading states. [...]
Learn how to use SWR to build an infinite scrolled paginated data. [...]
Learn how to start using SWR, the ZEIT data fetching library for React applications. [...]
Create a GitHub Actions workflow to automatically publish new version of a package when creating a new release on GitHub. [...]
Use Flagged to detect Feature Flags and render or not a React component [...]
Overview of the file structure I like to use in Next.js projects [...]
Learn how to test components using dynamic imports in a Next.js application. [...]
Learn how to create redirects when using Next.js in the most efficient way. [...]
Learn how to work with forms and form elements in React without using another library. [...]
Learn how to conditionally render elements and how to properly work with lists in React. [...]
Learn how to start a React project, create your first component and use the State and Effects hooks to implement basic behaviors. [...]
Contentz, a Pure Static Site Generator which let you focus on the content and gives you a highly optimized website. [...]
List of possible career paths, titles and level you could find while working as Software Engineer. [...]
Aprende como llevar tu sitio de Contentz a producción usando Netlify. [...]
Contentz toma decisiones por uno, a cambio nos ofrece un sitio optimizado para un mejor rendimiento y lectura. [...]
Aprende a usar Array#forEeach, como se implementa a mano y casos de uso prácticos de este método de los array en JavaScript. [...]
Aprende como crear un módulo y publicarlo a npm configurando Prettier, ESLint, pruebas, tipos y más. [...]
Introducción a Zero Server, el framework de desarrollo web con cero configuración. [...]
Contentz, un Pure Static Site Generator para obtener un sitio web super optimizado. [...]
El prop children tiene significado especial para React, veremos para que sirve y como usarlo en nuestros propios componentes. [...]
Para evitar prop drilling y hacer componentes aún más personalizables vamos a ver como usar un prop para cambiar el contenido de un componentes de Rea [...]
Una de las mejores cosas de React es poder combinar componentes para crear nuevo componentes más complejos [...]
Hay varias formas de definir que tipos de datos recibe un componente en React, puede ser TypeScript, Flow o PropTypes [...]
Es muy común querer tener props con valores por defecto en nuestros componentes de React, veremos varias formas de lograr este objetivo. [...]
Los props nos permiten crear componentes de React que sean personalizables y que nos sirven para muchos más casos [...]
Los componentes de React son la unidad básica de cualquier aplicación hecha con esta librería, aprende como crear y usar componentes de React [...]
En este tutorial vamos a ver como crear un Hola Mundo en React sin usar JSX [...]
En este tutorial vamos a ver como crear un Hola Mundo en React sin usar JSX. [...]
Un artículo con ideas de como sería mi generador de sitios estáticos ideal [...]
Aprende a usar Shell Scripts para automatizar tareas, todo con un ejemplo práctico para montar un entorno de trabajo para un proyecto en Node.js [...]
Aprende a usar Array#push, como se implementa a mano y casos de uso prácticos de este método de los array en JavaScript. [...]
Aprende a usar Array#filter, como se implementa a mano y casos de uso prácticos de este método de los array en JavaScript. [...]
Aprende a usar Array#map, como se implementa a mano y casos de uso prácticos de este método de los array en JavaScript. [...]
Tutorial sobre como se pueden usar Generadores Asíncronos de ECMAScript 2018 para realizar colas o paginaciones de un API fácilmente en JavaScript [...]
Tutorial sobre como implementar un carrusel para elementos de diferentes tamaños usando React.js [...]
Tips and recommendations to build real-time applications using WebSockets [...]
Consejos y recomendaciones para construir aplicaciones en tiempo real usando WebSockets [...]
Aprende a usar los nuevos features de React v16.6, lazy load, memoize, errores, contexto y más [...]
MDX es un formato de archivos que permite extender Markdown con código JS y JSX (Componentes de React) [...]
After working on the documentation of the API of ZEIT I want to share some insights I learned from it [...]
Después de trabajar en la documentación del API de ZEIT quiero compartir algunas lecciones que aprendí de ello. [...]
Cómo mantenerse actualizado es una pregunta común al comenzar, acá hay una lista de maneras útiles de hacerlo y no morir en el proceso. [...]
Crea un parser que transforme Markdown a componentes de React.js [...]
Testing is hard. Testing Frontend is harder. But you should do it anyways. [...]
How to keep updated is a common questions when starting, here you can find a list of useful ways to do it and not die in the process. [...]
Explicación paso a paso de como implementar un servidor GraphQL desde cero en Node.js. [...]
Today I leave my job as Frontend Developer at Platzi to start working as Support Engineer at ▲ZEIT. [...]
Repaso por los diferentes métodos del ciclo de vida de un componente de React.js [...]
Manejar flujos de datos síncronos es fácil, con Promises también es fácil hacerlos asíncronos. Ahora veamos como combinarlos. [...]
En 2015 Facebook anunció GraphQL, una tecnología que empezaron a desarrollar y usar internamente en 2012. ¿Pero qué es GraphQL? [...]
Manejar flujos de datos asíncronos es complejo, pero con Promesas esto se vuelve mucho más fácil [...]
Desde hace ya un tiempo han ido saliendo un montón de artículos sobre JS Fatigue, tantos que hasta hay artículos sobre la fatiga de esta. [...]
Redux es especialmente bueno al usarlo con librerías como React ya que facilita usar React solo para la UI y dejar el estado en Redux. [...]
Redux es una librería para controlar el estado de nuestras WebApps fácilmente, de forma consistente entre cliente y servidor y una gran DX. [...]
Cuando estamos haciendo desarrollo Frontend es una buena práctica separar nuestro código en distintos módulos, tanto el código de JavaScr… [...]
Guía de como usar FormatJS para internacionalizar aplicaciones hechas con React.js y poder pluralizar o formatear fechas y números. [...]
Desde finales del 2014, incluso antes de que se terminara de definir ECMAScript 6 ya se estaba empezando a trabajar en la siguiente versión… [...]
El nacimiento de Platzi Hace más de 5 años me enteré que los dueños de Cristalab y Maestros del Web se iban a juntar para crear Mejorando … [...]
React v0.14 es la nueva beta de la librería de Facebook que fue liberada recientemente. Esta primera versión llegará con dos grandes cambio… [...]
Algo muy molesto cuando estás usando ES6 con Babel.js y Gulp.js para automatizar tareas es que el archivo gulpfile.js sigue estando en ES5 … [...]
ECMAScript 2015, comunmente conocido como ECMAScript 6 o ES6, es la nueva versión del lenguaje estandarizado ECMAScript del cual sale JavaS… [...]
En el desarrollo FrontEnd con el tiempo han ido surgiendo lo que se conoce como buenas prácticas, cosas que normalmente hacemos porque mejo… [...]
React.js cada vez es más popular en el mundo del desarrollo web y una de las razones de esto es que permite crear código isomórfico, esto q… [...]
title: '' date: 2015-04-24T00:00:00.000Z published: true lang: es canonical_url: … [...]
Hasta hace unos años, cuando un desarrollador quería hacer templates de sus páginas, la opción era usar algún lenguaje en el Backend como P… [...]
Como desarrollador Frontend, hay ciertas tareas que se terminan volviendo repetitivas durante el desarrollo, como compilar el CSS desde un … [...]
JavaScript no tiene (por ahora) un sistema de módulos propio, aunque eso si, la comunidad fue creando varios para suplir esa necesidad. Act… [...]
Como desarrollador FrontEnd me encuentro constantemente utilizando CSS. Este lenguaje para dar estilos a páginas web tiende a empezar siend… [...]
Qué es el Scope El scope es el alcance de una variable, puede ser de dos tipos, global y local. Una variable cuyo scope es global se puede… [...]
Usar pre-procesadores de CSS de a poco se convierte un estándar en el mundo del desarrollo web front-end, pero primero empecemos hablando s… [...]
Scrum es una metodología de desarrollo ágil. Scrum propone una forma diferente de organizarse en el desarrollo de un proyecto, tanto en sol… [...]
Flexbox es un módulo de CSS3 que permite crear layouts flexibles de una forma más eficiente controlando la alineación de las cajas, el anch… [...]
La programación orientada a objetos o POO (OOP en inglés Object Oriented Programming) es una forma de realizar aplicaciones. Javascript por… [...]