Repository navigation
Releases
Releases · krishnakanthb13/rhyming-clock
v1.3.7
🚀 Features & Core Upgrades
- Upgraded AI Model (
v1.3.5): Transitioned to Google'sgemma-4-26b-a4b-itmodel via the Gemini API for richer and more creative poetic generation. - Sliding-Window Rate Limiter (
v1.3.5): Implemented a local sliding-window rate limiter restricted to 15 requests per minute to stay safely within the free-tier API quota. - Cross-Platform Launcher (
v1.3.4): Addedrhyming-clock.shshell script for Linux/macOS support, making the retro widget available across all major operating systems. - Auto-Environment Setup (
v1.3.4): The launcher scripts (.batand.sh) now automatically detect a missing.envfile and generate it from.env.example, making initial setup seamless.
🔒 Security & Resilience
- Secure API Key Handling (
v1.3.6): Transitioned API key transmission from the URL query parameter to thex-goog-api-keyHTTP header, preventing keys from leaking into browser history, referrers, or web logs. - Robust Error Recovery (
v1.3.6): Integrated capped exponential backoff and transient error retries (honoringRetry-Afterheader) to handle 429 and 5xx API responses gracefully. - Safer Rendering (
v1.3.6): Switched poem text rendering frominnerHTMLtotextContentto prevent arbitrary model output from being parsed as HTML (mitigating styling breakages and XSS vectors). - Persistent Rate-Limit State (
v1.3.6): The rate limiter now persists request timestamps tolocalStorageso the free-tier quota is enforced across page reloads.
🛠️ Bug Fixes & Code Cleanup
- Concurrency Guard (
v1.3.6): Added anisGeneratingflag to prevent simultaneous API requests triggered by overlapping timer ticks and window visibility-change events. - HTML Integrity (
v1.3.6): Fixed a malformed HTML issue by adding the missing opening<head>tag. - Asset Organization (
v1.3.3): Cleaned up the root directory by moving all screenshots, icons, and favicons into a dedicatedassets/subdirectory. - README Grid Alignment (
v1.3.7): Rearranged the screenshots in the mainREADME.mdinto a clean 2x2 grid layout using responsive HTML tags.
Full Changelog: v1.3.2...v1.3.7
v1.3.2
Add documentation and update references
Added CODE_DOCUMENTATION.md, DESIGN_PHILOSOPHY.md, CONTRIBUTING.md, and LICENSE for project documentation and licensing. Updated README.md to reference new documentation files. Removed obsolete code_readme.md.
Full Changelog: v1.3.1...v1.3.2
v1.3.1 - Text-to-Speech & Audio Enhancements
🔊 v1.3.1 - Text-to-Speech & Audio Enhancements
Your rhyming clock now speaks! Poems are read aloud automatically with configurable voices.
✨ New Features
🎤 Text-to-Speech (TTS)
- Automatic Read-Aloud: Every poem is now spoken automatically after typing completes
- Enabled by Default: No setup required—works out of the box
- Multiple Voice Options: Choose from Windows voices (
Microsoft David,Microsoft Zira), Chrome voices (Google US English), or macOS voices - Zero Cost: Uses the browser's built-in Web Speech API—no API keys or internet required for speech
- Toggle Control: Click
[ TTS: ON ]to disable; preference saved to localStorage
🔧 Configuration Variables
New easy-to-adjust settings in rhyming-clock.html:
TTS_PREFERRED_VOICE— Select your preferred speaking voiceTYPING_SOUND_VOLUME— Adjust typing sound volume (0 to 0.05)
⚡ Instant Audio Playback
- Audio and TTS now play immediately on page load
- No more clicking required to activate sounds
- Powered by Chrome's
--autoplay-policyflag
🛠️ Technical Changes
- Added
--autoplay-policy=no-user-gesture-requiredto launcher - Voice preloading via onvoiceschanged event ensures correct voice from first poem
- Audio context initializes immediately on load
- Updated documentation in README.md and code_readme.md
📋 Upgrade Notes
- Simply replace your existing files
- Close any running Rhyming Clock windows
- Re-launch via rhyming-clock.bat to apply new Chrome flags
Full Changelog: v1.2.0...v1.3.1
v1.2.0 - Visual Polish & Creative AI Update
- AI Creativity Boost: Refined the core prompt to encourage more "Random" and "Creative" poems, ensuring every minute feels fresh and unique.
- UI Readability: Increased the font size for the SYS_MODE and LOG status indicators to 12px for better visibility on the CRT display.
- Conflict Prevention: Migrated the background logger server to port 8088 to avoid potential port collisions with other local development services.
- Gallery Expansion: Added a new screenshot to the documentation to showcase the latest UI improvements.
v1.0.1
v1.0.0 Initial Release
✨ Features
- AI-Powered Poetry: Every minute, a new 2-line rhyming poem is generated based on the current time using Google Gemini AI.
- Retro Aesthetic: Designed with a CRT-style display, scanlines, and a pulsing power LED.
- Minimalist Window: Launches in a small, non-intrusive 300x200 window in the top-right corner of your screen.
- Typing Sound Effects: Authentic mechanical typing sounds as the poem appears.
- Resource Efficient: Ultra-low resource usage. The app syncs with the system clock and only refreshes once per minute.
- Smart Background Pause: Automatically pauses all AI generation and processing when the window is minimized or hidden, saving your API quota and system memory.
- Improved Reliability: Robust launcher script with automatic path correction and screen detection.