Skip to content
HomeVideosBooksBlogs
AllTop postsTopics
Podcasts
HistoryListsWatch laterLiked videosFollowing

The videos, books, blogs and podcasts Hacker News keeps recommending, all in one place.

VideosBooksBlogsPodcastsAboutPrivacySettings

Data from Hacker News, HackerTube, HackerBooks, HackerBlogs and Open Library. Credits · Not affiliated with Y Combinator.

HomeVideosBooksBlogsPodcasts
Ctrl K
    T

    TkDodo

    tkdodo.eu · Personal blog · on HN since 2021

    Dominik Dorfmeister (TkDodo), a React Query maintainer, writes about React, TanStack libraries, TypeScript, and frontend code structure.

    Visit blogRSSHN submissions
    Web DevelopmentProgramming
    What HN says

    HN commenters recommend it for understanding React Query, including query keys and type narrowing, and it comes up in debates over React's callback model.

    Stats for nerds
    21HN people shared it
    20linked in comments
    164story points
    Sep 2025last shared
    2021people per year2025

    Top posts on HN

    1. 1
      The Useless UseCallback
      2 people · 110 points · first shared 2025 · 112 comments on HN
    2. 2
      Please Stop Using Barrel Files
      2 people · 16 points · first shared 2024 · 4 comments on HN
    3. 3
      Tooltip Components Should Not Exist
      2 people · 9 points · first shared 2025 · Discussion on HN
    4. 4
      The Vertical Codebase
      3 people · 6 points · first shared 2026 · Discussion on HN
    5. 5
      Hooks, Dependencies and Stale Closures
      1 person · 6 points · first shared 2022 · Discussion on HN
    6. 6
      Type-Safe React Query
      2 people · 3 points · first shared 2023 · Discussion on HN
    7. 7
      The Beauty of TanStack Router
      1 person · 3 points · first shared 2025 · Discussion on HN
    8. 8
      Working with Zustand
      1 person · 3 points · first shared 2022 · Discussion on HN
    9. 9
      XState Store – TkDodo's Blog
      1 person · 2 points · first shared 2025 · Discussion on HN
    10. 10
      React Query meets React Router (v6.4)
      1 person · 2 points · first shared 2022 · Discussion on HN

    What HN people wrote when they linked it

    • CharlieDigitalSep 2025

      Actually, React's problem is that it's the inverse of how HTML and JavaScript works in terms of how to handle callbacks. Of the major UI frameworks, it is the only one with this quality (Vue, Svelte, Angular, Solid, etc. use signals).

      This inverted behavior is the cause of most of the pain and footguns in React and React Hooks because the way state behaves in a React component is not the way state behaves in any other front-end JS one would normally write.

      That's why I think for some folks who started with HTML + vanilla JS, React Hooks just feels wrong. It points the reactive callback to the component function whereas every other framework/library uses some sort of signal to point the reactive callback to a handler. Because React points the callback to the component function, then you have to be really cautious about where you put state inside of a component[0][1][2]

      Even You wrote this about React's design choice which I think sums it up best:

      > The pain and suffer[ing] of hooks all roots from the mismatch between a dogmatic belief in the superiority of immutability and the harsh reality of the host language that is JavaScript If you want to "feel" this for yourself, here are a series of JSFiddles:

      - Vanilla: https://jsfiddle.net/qtmkbdo2/8/

      - Vue: https://jsfiddle.net/vys2rmup

      - React: https://jsfiddle.net/0gjckrae/1/

      It should be obvious that Vanilla and Vue behave like how one would expect callbacks to work. React, because it points the callback to the…

    • fabian2kOct 2023

      It was more of a general misunderstanding on how React Query is supposed to work, partially triggered by some mistakes in defining the query keys that meant that React Query didn't work as intended.

      I'd recommend this blog post (or actually all blog posts on React query on that site):

      https://tkdodo.eu/blog/effective-react-query-keys

      What I observed was that the query keys were not consistently defined, which broke automatic refetching when the data was modified and invalidated. So the developer added some manual refetches because they thought React Query couldn't handle that automatically.

      You need a consistent structure for your query keys and use that everywhere. Then you only need to make sure to invalidate the correct part of the query key hierarchy and the rest works automatically.

    • tshaddoxNov 2021

      I believe this will also obviate a common recommendation to not destructure when using React Query: https://tkdodo.eu/blog/react-query-and-type-script#type-narrowing

    Related

    Overreactedoverreacted.io186 people

    Goodbye, Clean Code

    Overreacted
    Personal · last shared 2026
    tpolecattpolecat.github.io16 people

    Doobie

    tpolecat
    Personal · last shared 2025
    Facebook Engineeringcode.facebook.com552 people

    Relicensing React, Jest, Flow, and Immutable.js

    Facebook Engineering
    Company · last shared 2021
    SurviveJSsurvivejs.com35 people

    Interview with the author of React-like Inferno about JavaScript optimisations

    SurviveJS
    Personal · last shared 2023
    Marmelab Blogmarmelab.com51 people

    React I love you, but you're bringing me down

    Marmelab Blog
    Company · last shared 2026
    LogRocket Blogblog.logrocket.com242 people

    The easiest way to keep your web apps accessible: Just use text

    LogRocket Blog
    Company · last shared 2026
    Front-End Hackingmedium.com/front-end-hacking19 people

    How it feels to learn JavaScript in 2017

    Front-End Hacking
    Publication · last shared 2018
    Next.js Blognextjs.org271 people

    Next.js 12

    Next.js Blog
    Company · last shared 2026