morphic.frontend
Flask web application providing a unified tabbed interface.
Application Factory
Flask application factory and CLI entry-point for morphic.
-
morphic.frontend.app.create_app(initial_folder=None)[source]
Create and configure the Flask application.
- Parameters:
initial_folder (str, optional) – Folder path to pre-populate in the UI.
- Return type:
Flask
-
morphic.frontend.app.main()[source]
CLI entry-point: morphic.
- Return type:
None
Shared Routes
Shared routes — index page, folder browsing, thumbnail & media serving.
-
morphic.frontend.routes_shared.index()[source]
Serve the single-page application.
-
morphic.frontend.routes_shared.browse_directory()[source]
List directories for the in-page folder browser.
-
morphic.frontend.routes_shared.native_folder_dialog()[source]
Open the OS-native folder picker dialog.
-
morphic.frontend.routes_shared.api_system_info()[source]
Return diagnostic info about GPU/cuda/ffmpeg availability.
-
morphic.frontend.routes_shared.serve_thumbnail()[source]
Generate and serve a thumbnail for a media file.
-
morphic.frontend.routes_shared.serve_media()[source]
Serve a media file for full-size preview.
Converter Routes
Converter-tab API routes — scan, formats, convert, delete, progress.
-
morphic.frontend.routes_converter.api_scan()[source]
Scan a folder for convertible media files.
-
morphic.frontend.routes_converter.api_formats()[source]
Return all conversion mappings (source -> targets).
-
morphic.frontend.routes_converter.api_convert()[source]
Convert files and return progress job id.
-
morphic.frontend.routes_converter.api_progress(job_id)[source]
Get progress of a conversion job.
- Parameters:
job_id (str)
-
morphic.frontend.routes_converter.api_progress_poll(job_id)[source]
Long-poll for conversion progress (blocks up to 10s).
- Parameters:
job_id (str)
-
morphic.frontend.routes_converter.api_delete()[source]
Delete selected files.
Dupfinder Routes
Dupfinder-tab API routes — scan, status, results, delete.
-
morphic.frontend.routes_dupfinder.api_start_scan()[source]
Start a new duplicate scan.
-
morphic.frontend.routes_dupfinder.api_scan_status(job_id)[source]
Get status of a scan job.
- Parameters:
job_id (str)
-
morphic.frontend.routes_dupfinder.api_scan_results(job_id)[source]
Get results of a completed scan.
- Parameters:
job_id (str)
-
morphic.frontend.routes_dupfinder.api_delete_files()[source]
Delete selected duplicate files.