- New i18n system: src/i18n/translations.ts with en/ru translation objects
- LanguageSwitcher component (fixed top-right EN/RU toggle)
- BaseLayout updated with lang prop, hreflang links, auto-redirect for Russian browsers
- All 10 generator components updated to use T.* translations
- GeneratorCard updated to show ruTitle/ruDescription and link to /ru/ routes
- SeoBlock updated with translated section headers
- New /ru/ home page and /ru/generators/[slug] dynamic route (all 10 generators)
- Russian SEO content (howTo/whenTo) for all generator pages
- English pages explicitly pass lang="en"
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Each page now has a subtle text section with keyword-rich content
for search engine indexing, without disrupting the tool UX.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- @astrojs/sitemap generates sitemap-index.xml at build time
- robots.txt points crawlers to the sitemap
- generators.ts extended with seoTitle and seoDescription per generator
- All generator pages now use seoTitle/seoDescription for <title> and <meta description>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Leaderboard shows horizontal layout with logo, text and CTA button.
Tile/rectangle show vertical layout. All link to Yandex referral URL with rel=sponsored.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Coin flip: slider 1–20 coins, heads/tails display with H/T count summary
- List picker: textarea input, configurable pick count, unique or with-replacement, Ctrl+Enter shortcut
- UUID/Token: UUID v4 via crypto, hex and base64 modes with configurable byte length, up to 20 at once
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
On push to main: builds Astro, deploys dist/ to reg.ru via rsync over SSH.
Requires DEPLOY_KEY, DEPLOY_HOST, DEPLOY_USER secrets.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Adds /generators/cards/ — draws 1–52 cards from a standard 52-card deck. Supports unique draws (Fisher-Yates) and with-replacement mode. Cards rendered as mini playing-card tiles with red suits coloured. Clipboard copy in rank+suit format (e.g. A♠, K♥).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Adds /generators/dice/ with configurable count (1–20) and standard RPG sides (d4/d6/d8/d10/d12/d20/d100). Shows individual rolls with colour-coded min/max, running total, and clipboard copy in NdS=total format.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Adds /generators/lottery/ with configurable range and pick count. Partial Fisher-Yates shuffle guarantees unique draws, results sorted ascending and displayed as numbered balls with clipboard copy.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Adds /generators/password/ with length slider (4–64), uppercase/lowercase/digits/symbols toggles, guaranteed character-type coverage, Fisher-Yates shuffle, and clipboard copy. Sets password status to live in the generator catalog. Also adds CLAUDE.md with project architecture notes.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>