The Authentication component comes installed with the ability to detect the user's timezone, or let users change and save their timezone.
This enables you to always display times in your app in the user's timezone.
The timezone detection is powered by the Stimulus JS controller in app/javascript/controllers/timezone_controller.js
.
When a new user registers, the sign up form has the timezone stimulus controller attached to the hidden :timezone
field, which handles detecting and saving the user's timezone.
A user can change their timezone in the user settings page.
I created Instrumental Components to make designing and building professional apps with Ruby on Rails easy, fast, and fun. I use it on all of my projects and I hope it helps you build something great.