| I have used RSCs only in Next.js, but to answer your questions: 1./2.: You can update it optimistically. [0] 3.: Depends on the framework's implementation. In Next.js, you'd invalidate the cache. [1][2] 4.: In the case of the like button, it would be a "form button" [3] which would have different ways [4] to show a pending state. It can be done with useFormStatus, useTransition or useActionState depending on your other needs in this component. 5.: You block the double request with useTransition [5] to disable the button. 6.: In Next, you would invalidate the cache and would see your like and the like of the other user. [0] https://react.dev/reference/react/useOptimistic [1] https://nextjs.org/docs/app/api-reference/functions/revalida... [2] https://nextjs.org/docs/app/api-reference/directives/use-cac... [3] https://www.robinwieruch.de/react-form-button/ [4] https://www.robinwieruch.de/react-form-loading-pending-actio... [5] https://react.dev/reference/react/useTransition |