i18n-and-timezones

Installation
SKILL.md

I18n + Time Zones

Two related areas Rails handles well by default but AI agents botch consistently. Strings get hardcoded. Time.now returns server-local instead of UTC. DST changes break appointment booking. This skill encodes the defaults that prevent each class of bug.

The opinion

Externalize every user-visible string via t(). Use the rails-i18n gem for built-in locales (date formats, currency, validation messages). Store all times as UTC in the database (Rails default). Use Time.current / Time.zone.now, never Time.now. Set Time.zone per-request based on user preference. Use the time_in_zone helper for display. Test DST transitions explicitly.

Core patterns

Pattern 1: Externalize strings

Installs
1
GitHub Stars
21
First Seen
Sep 8, 2026
i18n-and-timezones — sandeepmvl/rails-skills