DEV Community

kaiCATs
kaiCATs

Posted on

I built a desktop pet that reminds you of events and birthdays 🐾

Hey Dev.to! 👋
Today I shipped v10.2 RU/EU and wanted to share what changed.

🗂 Modular architecture
The monolithic pet_ru.py has been split into separate modules by responsibility — animation, tray, reminders, chat, events, storage, locale, tutorial and more. Each file now has a single clear purpose, making the code easier to read and maintain.

💾 Unified storage
Replaced 9 separate JSON files with a single app_state.json. Events and chat history remain in their own files due to size. Legacy files are automatically migrated on first launch.

🌐 EN / RU localization
All user-facing strings are now centralized in locale_app.py. Switch language anytime from the tray menu — the entire UI updates instantly, including the tutorial.

🐛 Bug fixes
Fixed a crash when opening the tutorial from the tray menu.

P.S. Maybe there's more to work on. But for now, this is the final version.

Stack

Python 3.14+
PyQt5
PyInstaller for .exe build
Windows only (registry autostart, tray)

GitHub
🔗 https://github.com/kaiCATs/pet-reminder

Top comments (0)