Skip to content

Releases: Ariel-Gal/PyMontage

v1.0.1 - Font Management & Cleanup System‏

Choose a tag to compare

@Ariel-Gal Ariel-Gal released this 19 Jan 10:33
50995b4

🎯 PyMontage v1.0.1 - Font Management & Cleanup System

📋 Description

Release of version 1.0.1 with major improvements to font management, server cleanup, and code maintenance.

✨ New Features

  • Google Fonts Integration: Search and download any font directly from Google Fonts library

  • Real-time font search with live results (up to 15 matches)

  • One-click font download and installation

  • Auto-caching to avoid re-downloading

  • Enhanced Font System:

  • Built-in support for Windows system fonts (Arial, Trebuchet, Comic Sans, etc.)

  • Fallback resolution: absolute path → local cache → system fonts → auto-download

  • Downloaded fonts persist in assets/fonts/ directory

🧹 Improvements

  • Auto Cleanup System: Server now cleans up all temporary files on shutdown

  • Removes temp_uploads/ and temp_outputs/ directories

  • Cleans Python cache (__pycache__/, .pytest_cache/)

  • Removes compiled Python files (*.pyc, *.pyo)

  • Cleans MoviePy temporary files

  • Graceful exit on CTRL+C (SIGINT) and system termination (SIGTERM)

  • Updated .gitignore: Added entries for all cleanup targets

  • *.pyo, .pytest_cache/ for Python cache

  • assets/fonts/ for downloaded fonts (regenerated on demand)

  • TEMP/, *.tmp for MoviePy temporary files

📝 Changes

  • app.py:

  • Added cleanup_temp_folders() function with comprehensive cleanup

  • Added signal handlers for SIGINT and SIGTERM

  • Added /fonts/search endpoint (Google Fonts metadata API)

  • Added /fonts/download endpoint (font installation)

  • video_engine.py:

  • Enhanced install_google_font() with Google Fonts API integration

  • Enhanced resolve_font_path() with priority-based fallback

  • Added tempfile import for cleanup support

  • templates/index.html:

  • Fixed JavaScript syntax errors (missing closing brace in updateVideoDurationEstimate())

  • Added font search UI with real-time input

  • Added "Download & Use" buttons for Google Fonts

  • Auto-population of font dropdown with downloaded fonts

  • README.md: Updated documentation for v1.0.1 with new features

✅ Testing

  • Font search returns correct results from Google Fonts
  • Font download saves files to assets/fonts/ and persists across sessions
  • Server cleanup removes all temporary files on exit
  • CTRL+C gracefully shuts down and cleans up
  • Frontend font selection properly resolves through fallback system

📚 Documentation

See README.md for updated documentation on font features and configuration.

v1.0.0 - First Production Release 🚀

Choose a tag to compare

@Ariel-Gal Ariel-Gal released this 13 Jan 10:58

PyMontage v1.0.0 is here! 🎉

This is the first stable release of PyMontage, an automatic video slideshow creator powered by Flask and MoviePy.

✨ Key Features

  • Smart Layouts: Automatically arranges photos in 2x2 grids, 1x3 vertical grids, or collages based on orientation.
  • Audio Magic: Supports multiple audio tracks with automatic crossfading and beat synchronization.
  • Web Interface: Full local web GUI (Flask + Bootstrap) with drag-and-drop support.
  • Customization: Control resolution (up to 4K), transition speeds, fonts, and video quality (bitrate/FPS).
  • Performance: GPU acceleration support (NVIDIA NVENC) and smart image downscaling for memory optimization.

🛠️ Installation

  1. Clone the repo.
  2. Install dependencies: pip install -r requirements.txt
  3. Run the app: python app.py
  4. Open http://127.0.0.1:5000

Enjoy your slideshows! 🎬