03-Feb-2026 — add external album import from Flickr ref: #147

build 459commit 7333a44


Overview

This release introduces two major features: Flickr Album Import for bringing external photo albums into the platform, and significant Environment Setup Enhancements for database-driven configuration. It also includes numerous code quality improvements and developer experience enhancements.


User Guide

New Features

1. Import Flickr Albums

You can now import photo albums directly from Flickr without copying images to S3. Images remain hosted on Flickr while the album is managed within the platform.

How to Access

Navigate to Admin > System Settings > Image Migration > Import from External Sources

Single Album Import

  1. Select Single Album mode
  2. Paste a Flickr album URL (e.g., https://www.flickr.com/photos/username/albums/12345)
  3. Enter a target path for the new page (e.g., gallery/2024/summer-walk)
  4. Optionally customise the album title and subtitle
  5. Click Import Album
  6. The system will:
    • Fetch all photos from the Flickr album
    • Extract photo titles and dates
    • Create a new album page at your specified path

Bulk Import (Multiple Albums)

  1. Select Bulk Import mode
  2. Enter a Flickr user ID or username
  3. The system will fetch and display all albums for that user
  4. Select the albums you wish to import using checkboxes
  5. Set a base path (e.g., gallery) - albums will be created at {base-path}/{album-name}
  6. Review the generated paths (you can modify them before import)
  7. Click Import Selected Albums
  8. Monitor progress in real-time as each album is imported

Album Splitting

For large albums with photos from different events, you can split them:

  1. Enable Split by Photo Title
  2. The system groups photos by their title patterns
  3. Preview how photos will be split into separate albums
  4. Choose which groups to include
  5. Each group becomes its own album page

What Gets Imported

Template Support

You can use an existing album page as a template:

  1. Enable Use Template
  2. Enter the path of an existing album page
  3. The new album(s) will inherit the layout and grid settings from the template

2. Index Row Auto Title

Index rows now support automatic title generation from the page URL.

How It Works

How to Use

  1. Edit any page with an Index row
  2. Find the Auto Title checkbox in the Index row settings
  3. When enabled, the title updates automatically based on the page path
  4. When disabled, a markdown editor appears for custom title content

This is useful for:


3. Improved CLI Tool

The command-line interface has been significantly enhanced for local development.

Starting the Application Locally

# Development mode (with hot reload)
ngx-cli local dev staging

# Production mode (build then run)
ngx-cli local prod staging

Available Environments

# List all configured environments
ngx-cli local list

The CLI will:

Log Files

Use the --log-dir flag to save logs:

ngx-cli local dev staging --log-dir ./logs --log-timestamp

4. Environment Configuration from Database

Environment configuration is now stored in the database rather than file-based configs. This provides:

The system will automatically use database configuration, with file-based fallback only as a last resort (you'll be prompted before this happens).


Changes to Existing Features

Album Grid View

Template Selector


Technical Changes

GitHub Issue #147: Flickr Album Import - Completion Status

Completed Requirements

Requirement Status
New "Import from External Sources" tab ✅ Complete
Single album import with URL input ✅ Complete
Bulk import from user albums ✅ Complete
Multi-select album interface ✅ Complete
Auto-generated paths from album names ✅ Complete
PageContent creation with correct structure ✅ Complete
ContentMetadata with Flickr URLs ✅ Complete
Photo title extraction (text field) ✅ Complete
Photo date extraction (date field) ✅ Complete
Real-time progress via WebSocket ✅ Complete
Error handling for invalid URLs ✅ Complete
Album splitting by photo title ✅ Complete
Template-based album creation ✅ Complete

Pending Testing


GitHub Issue #146: Environment Setup - Changes in This Release

Completed in This Release

Enhancement Status
Database-driven environment configuration ✅ Complete
CLI database connection with explicit connect ✅ Complete
Fallback prompt before using file-based config ✅ Complete
Environment variable logging on CLI startup ✅ Complete
Standardised debug logging with envConfig.logNamespace() ✅ Complete

Bonus Features (Outside Original Scope)

1. External Album Import Framework

2. Album Splitting Feature

3. Template-Based Album Creation

4. Index Row Auto Title

5. Enhanced CLI Local Development

6. Real-Time Import Progress

7. Code Quality Improvements


Migration Notes

For Administrators

For Developers


Testing Checklist