Releases: bejranonda/the-not-so-modern-dictionary
v3.1.1: Critical Bug Fixes for Windows Compatibility
Version 3.1.1 - Bug Fixes
This release addresses critical bugs affecting Windows compatibility and PDF generation.
Bug Fixes
🐛 PDF Generation
- Fixed errors in all PDF generators
- Corrected page calculation logic from to
- Changed fallback page index from 6 to 7 for valid page reference
🪟 Windows Compatibility
- Added UTF-8 encoding support for Windows console output
- Fixed Unicode character display (Thai text and emojis)
- Updated logger to properly handle non-ASCII characters
📁 File System
- Fixed font path for NotoSansKhmer-Regular.ttf in legacy generators
- Ensured output directory is created before writing JSON files
- Added missing
src/utils/requests.pymodule for remote management
Files Changed
slang_pdf_generator.pyslang_pdf_generator_lastweek.pysrc/pdf/generator.pysrc/utils/logger.pysrc/utils/requests.py(new)thai_slang_dict_main.pythai_slang_dict_main_lastweek.pythai_slang_kiosk.pythai_slang_kiosk_lastweek.py
Installation
git clone https://github.com/bejranonda/the-not-so-modern-dictionary.git
cd the-not-so-modern-dictionary
git checkout v3.1.1
pip install -r requirements.txt
python main.pyFull Changelog: v3.1.0...v3.1.1
v3.1.0 - Complete Refactored Architecture
Release v3.1.0: Complete Refactored Architecture with Legacy Code Preservation
This release completes the refactored modular architecture (v2.0) and reorganizes the project structure for better maintainability while preserving the legacy code for production stability.
🎯 Major Changes
Refactored Modules Completed
src/ui/kiosk.py(865 lines) - Complete kiosk UI module- Dependency injection for database, easter_eggs, speech_engine, sound_manager
- Settings integration from
src.config.settings - Structured logging with app_logger
- Full 7-step workflow preserved
src/pdf/generator.py(1046 lines) - Complete PDF generator- PDFGenerator class with mode support (normal/lastweek)
- All helper functions from legacy code preserved
- Template merging, booklet layout, printer integration
- Locale handling for Thai text collation
Project Organization
- New Directory Structure:
assets/- All media files (audio, fonts, templates)docs/- Documentation and example filesscripts/- Utility scripts and deployment toolslegacy/- Archived experimental codesrc/ui/- User interface modulessrc/pdf/- PDF generation modules
Enhanced Documentation
- Comprehensive CHANGELOG.md with version history
- Development history and acknowledgments
- Exhibition photos and booklet samples
- Fortune teller feature explanation
- Non-technical visitor guide
🔄 Legacy Code Preservation
All original exhibition code preserved and functional:
thai_slang_dict_main.py- Normal editionthai_slang_dict_main_lastweek.py- Last week editionthai_slang_kiosk.py- Normal edition UIthai_slang_kiosk_lastweek.py- Last week edition UIslang_pdf_generator.py- Normal edition PDF generatorslang_pdf_generator_lastweek.py- Last week edition PDF generator
🚀 Running the Application
Refactored Version (Recommended for Development)
python main.py # Kiosk mode (default)Legacy Version (Preserved for Production)
python thai_slang_dict_main.py # Normal edition
python thai_slang_dict_main_lastweek.py # Last week edition📊 Technical Details
Refactored Modules Statistics:
src/ui/kiosk.py: 865 linessrc/pdf/generator.py: 1046 lines- Full feature parity with legacy code
- 100% backward compatible
Files Changed: 150+ files
- 100+ file relocations
- 20+ path updates
- 8+ new modules created
- 3 temporary files removed
Compatibility:
- ✅ Python 3.8 - 3.13+
- ✅ Windows / macOS / Linux
- ✅ PyQt5 5.15+
🔧 Installation
# Clone the repository
git clone https://github.com/bejranonda/the-not-so-modern-dictionary.git
cd the-not-so-modern-dictionary
# Install dependencies
pip install -r requirements.txt
# Run the application
python main.py # Refactored version
# OR
python thai_slang_dict_main.py # Legacy version📝 What's Preserved
Functionality:
- ✅ All exhibition functionality (normal and last-week editions)
- ✅ GUI emoji displays
- ✅ Console emoji output
- ✅ Database format and compatibility (
user_added_slang.json) - ✅ PDF generation features
- ✅ Motion detection and audio feedback
- ✅ Easter eggs (jackpot, system hacked, fortune telling)
- ✅ 7-step kiosk workflow
- ✅ Automatic printing functionality
🎨 About The Project
The Not-So-Modern Dictionary (ปทานุกรมแบบสับ) is an interactive art installation that creates a collaborative, evolving dictionary where visitors contribute slang terms and take home personalized mini-dictionaries.
Exhibition Details:
- Venue: Bangkok Kunsthalle
- Duration: June 13 - August 17, 2024
- Contributions: 534 unique terms from 462 visitors
- Booklets printed: 544
👥 Credits
Collaboration:
- Werapol Bejranonda (Engineer)
- Yoonglai Collective (Artists)
AI Development Assistance:
- Gemini & ChatGPT (initial prototyping)
- Claude (refactoring and documentation)
See CHANGELOG.md for complete version history.
v3.0.1 - Exhibition Final Results Documentation
🎉 Exhibition Final Results Release
📊 Community Impact Documentation
This release captures the remarkable success of The Not-So-Modern Dictionary exhibition at Bangkok Kunsthalle (13 June - 17 August 2025).
✨ Exhibition Statistics Added
- 462 Authors: Total participants who contributed to the dictionary
- 534 Unique Words: Distinct slang terms collected during the exhibition
- 748 Data Sets: Complete submissions including words, meanings, and examples
- 544 Booklets: Physical dictionaries printed and distributed to visitors
🔥 Most Popular Slang (Hottest Words)
Documented the five most frequently submitted terms:
- จาบ (Jaab) - 7 submissions
- อาจจะยัง (Aat Ja Yang) - 6 submissions
- โซะ (So) - 5 submissions
- เกียม (Giam) - 5 submissions
- เริ่ดเลอ (Roet Loe) - 5 submissions
📅 Final Activity Records
- Latest Word: บายบาย (Bye Bye)
- Latest Author: ดอปจชท (Dopjochot)
- Data Captured: As of 11/09/2025
📚 Documentation Enhancements
- README.md: Added comprehensive exhibition outcomes section
- CHANGELOG.md: New version documentation with community metrics
- Real-world Impact: Demonstrated successful interactive art installation deployment
This release celebrates the collaborative language documentation project that transformed visitor participation into a living dictionary, preserving evolving linguistic expressions through community engagement.
1.4 - Voice Features & Request System
🎤 Voice Features Release
✨ New Features
- Voice to Request: Added voice input functionality
- Routine Requests: Automated routine request system
- Special Requests: Enhanced special request handling
- Request Function: Improved request processing
🔧 Improvements
- Code Organization: Relocated request functions for better structure
- Script Updates: Updated request processing scripts
- System Cleanup: Code cleanup and optimization
🐛 Bug Fixes
- Performance: General system improvements and optimizations
This release focused on enhancing user interaction through voice features and improved request handling.
1.3 - Cross-Platform Improvements
🖥️ Cross-Platform Release
✨ New Features
- MAC Support: Enhanced printing orientation for MAC
- Menu Updates: Improved menu text and interface
🐛 Bug Fixes
- MAC Printing: Fixed printing issues on MAC systems
- Display Issues: Resolved various display problems
🧹 Code Cleanup
- Library Optimization: Removed unnecessary libraries
- Component Cleanup: Removed unused components
- Performance: System optimization and cleanup
Focus on cross-platform compatibility and system optimization.
1.2 - Internationalization & Templates
🌐 Internationalization Release
✨ New Features
- Multi-language Support: Added local support for other languages
- Template System: Implemented template functionality
- External Greetings: Extracted greeting list to external file
🎨 UI Improvements
- Text Centering: Made text centered for better presentation
- Column Layout: Debug column and changed font size
- Background Pages: Added individual background pages, decreased font size
- Summary Adjustments: Improved summary presentation
🖼️ Visual Enhancements
- Logo Integration: Added logo to GUI
- Motion Sensitivity: Increased motion sensitivity for better detection
This release introduced comprehensive internationalization and improved visual design.
1.1 - Enhanced UI & Printing
🖨️ Enhanced Interface Release
✨ New Features
- Two-Column Layout: Implemented free flow in 2 columns
- Entry System: Made 2 columns in entry for better organization
- Print to Printer: Added direct printer functionality
- Template System: Added template support
🎨 Visual Improvements
- GUI Logo: Added logo to graphical interface
- Layout Optimization: Improved column-based layout
- Motion Detection: Enhanced motion sensitivity
🐛 Bug Fixes
- Intro and Fortune: Fixed template and intro/fortune features
- Font Improvements: Modified fonts for better readability
This release focused on improving the user interface and adding professional printing capabilities.
1.0 - Original Exhibition Version
🎭 Original Exhibition Release
🎉 Major Features
- Fortune System: Added English fortune functionality
- Last Word Page: Implemented last word tracking
- Fortune Page: Dedicated fortune display page
- Enhanced Statistics: More comprehensive statistics tracking
🌏 Language Support
- Thai Features: Core Thai language functionality
- English Integration: Bilingual support for fortune features
👥 User Collaboration
- User Authorship: Enabled users to become co-authors (ให้ User มีโอกาสเป็นผู้แต่งร่วม)
- Data Collection: Improved data storage with timestamps
- Statistics Page: Added statistics to dictionary front page
🎨 Design Improvements
- Alphabetical Sorting: Arranged content alphabetically (เรียงตามตัวอักษร)
- Fortune Predictions: Adjusted prediction system (ปรับแสลงทำนาย)
This is the version deployed at Bangkok Kunsthalle exhibition for "This page is intentionally left _____." by Yoonglai Collective (13 June - 17 August 2025).
1.3special - Special Edition
🌟 Special Edition Release
✨ New Features
- Special Request Function: Added specialized request handling
- Menu Enhancements: Updated menu colors and visual design
🐛 Bug Fixes
- Double Running Protection: Fixed script running twice issue
- Menu Display: Fixed menu display errors
- MAC Compatibility: Updated menu system for MAC users
🔧 Platform Support
- Enhanced cross-platform compatibility
- Improved user interface stability
Special edition with enhanced menu system and platform-specific fixes.
0.4 - Enhanced Data Collection
📊 Data Collection Enhancement
✨ New Features
- Timestamp Integration: Enhanced data collection with date and time stamps
- Statistics Integration: Added statistics page to dictionary front page
🔧 System Improvements
- Data Management: Improved data storage and retrieval
- User Tracking: Better user interaction tracking
Early development version focusing on data collection improvements.