Skip to content
AITroveRead. Build. Understand.
Make this comfortable

Project: localized guide release

Last updated: 5 Oct 20268 min read
project
IntermediateBy AITrove Editorial

Build a two-language guide for uploading inspection photos. Give the English and Hindi pages one stable content identity but separate, shareable routes. The guide must declare its actual page language, link to a related lesson in the same language when available, and preserve an old localized slug after an edit. Give each translation a source revision and editorial readiness state. A translated title attached to an old English body is not a release. The project should show what happens when one locale is missing a critical message or lags behind an upload-rule change.

Build contract

  • Store a stable guide ID, per-locale slug, source revision, translation revision, and readiness field; retain redirect aliases for old slugs.
  • Render a case timestamp and reimbursement from canonical values through an explicit display locale and time-zone policy.
  • Exercise mixed-direction reviewer names and case IDs, and check long translated copy at a narrow zoomed viewport.

Implementation checkpoint

javascript
const guide = { id: "photo-intake", sourceRevision: 47, routes: { en: "/en/guides/photo-intake", hi: "/hi/guides/photo-intake" }, ready: { en: 47, hi: 46 } };
const hindiIsCurrent = guide.ready.hi === guide.sourceRevision;

Cost and boundaries

Per-locale pages add review work, cache entries, and link variants. Revision checks and redirects use little storage compared with the cost of sending a reader to stale instructions. Construct locale formatters once per view rather than once per row. Do not use display strings as API values. Keep the translation release check separate from route existence so a successful response cannot hide obsolete content.

Failure drill

Advance the source guide from revision 46 to 47 when the accepted image size changes. The Hindi route still exists but is not ready. The release process must surface that mismatch and apply its explicit fallback or hold policy. Rename the Hindi slug while an old bookmark remains; the old route must redirect to the current page without looping. Then insert a Latin reviewer name into an Arabic test page and copy its case ID into search to check that visual order did not alter the identifier.

Acceptance checks

  • Open both locale routes directly and inspect declared language, body, and related links.
  • Change a slug and verify the old path redirects to the intended new route.
  • Advance the source revision and verify the lagging translation is flagged.
  • Change locale while retaining exact amount, currency code, and canonical instant.

Common Mistakes

  • Assuming a healthy localized URL means the guide is translated and current.
  • Using a rendered date or money string as stored data.
  • Mirroring a page instead of setting direction and isolating mixed text.

Related lessons

Message Catalog Contracts and Fallback; Currency, Date, and Time-Zone Presentation; Right-to-Left and Mixed-Direction Content; Localized Routes and Translation Release; Internal Link Architecture for Technical Guides.

web-tech
web-development
Storage details