Skip to content

[Feature] Dashboard greeting should respect user timezone and handle late-night hours separately #551

Description

@i-iooi-i

What's your idea?

The dashboard greeting currently appears to use the browser/local hour and maps all hours before noon to “Good morning”. It would be nice if the greeting could respect the user’s configured timezone in Account Settings, and optionally handle late-night hours separately.
For example:
00:00-04:59: Good night / Still up?
05:00-11:59: Good morning
12:00-17:59: Good afternoon
18:00-23:59: Good evening

What problem does it solve?

For users outside the server/browser default timezone, or users who have explicitly configured a timezone such as Asia/Shanghai, the dashboard greeting can feel incorrect.
In my case, I set my account timezone to China/Shanghai and restarted Docker, but at around 1 AM the homepage still showed:
Good morning, ****
This is a little confusing because other reading statistics and date-based features appear to care about timezone, while the greeting does not seem to use the account timezone setting.

Anything else? (optional)

This is not a major functional bug, just a small UX polish suggestion.
A possible implementation could be:
Read the user’s configured timezone from account settings.
Use Intl.DateTimeFormat or a timezone-aware helper to calculate the hour in that timezone.
Treat late-night hours separately instead of grouping 00:00-11:59 as morning.
Thanks again for building BookOrbit. The dashboard already feels very polished, and this would make it feel more natural for users in different timezones.

Want to help?

Yes, I'd like to implement this

Before submitting

  • I've searched existing issues and this hasn't been requested yet.

Metadata

Metadata

Assignees

No one assigned

    Labels

    featureNew feature request or capability proposal.releasedIssue or PR is included in a released version.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions