Skip to main content

Remote SSH Image Gallery Viewer

Project description

PyRemoteView - Remote SSH Image Gallery Viewer

PyPI version PyPI - Python Version License: MIT

PyRemoteView is a web-based application that allows you to remotely browse and view images stored on another server via SSH, with automatic thumbnail generation and caching for improved performance.

Features

  • Browse remote directories and view images via web interface
  • Automatic thumbnail generation for faster browsing
  • Local caching of images and thumbnails
  • Supports common image formats (JPG, PNG, GIF, WebP, BMP)
  • Responsive gallery with lightbox view and keyboard navigation
  • Debug interface for troubleshooting
  • Can be used to browse local files as well

Requirements

  • Python 3.6+
  • Flask
  • Pillow (PIL)
  • SSH access to the remote server

Installation

Install from PyPI (Recommended)

You can install PyRemoteView directly from PyPI using pip:

pip install pyremoteview

This will install all required dependencies automatically.

Manual Installation

If you prefer to install from source:

  1. Clone or download this repository
  2. Install required packages:
    pip install -r requirements.txt
    
  3. Install the package:
    pip install .
    

Setting Up Passwordless SSH

For PyRemoteView to work properly, you need to set up passwordless SSH access to the remote server:

  1. Generate an SSH key pair (if you don't already have one):

    ssh-keygen -t rsa -b 4096
    
  2. Copy your public key to the remote server:

    ssh-copy-id username@remote-server
    

    Or manually add the content of ~/.ssh/id_rsa.pub to the remote server's ~/.ssh/authorized_keys file.

  3. Test your passwordless login:

    ssh username@remote-server
    

    You should be able to log in without entering a password.

Usage

After PyPI Installation

If you installed PyRemoteView from PyPI, you can start it directly from the command line:

pyremoteview --remote-host remoteserver --remote-path /path/to/images

If Installed from Source

python remote_gallery.py --remote-host remoteserver --remote-path /path/to/images

Command Line Options

  • --port PORT: Port to run the server on (default: 8080)
  • --host HOST: Host to run the server on (default: 0.0.0.0)
  • --remote-host REMOTE_HOST: Remote host to fetch images from
  • --remote-path REMOTE_PATH: Path on remote host to browse

Serving Local Files

To browse images on your local machine, use localhost as the remote host:

python remote_gallery.py --remote-host localhost --remote-path /path/to/local/images

Web Interface

After starting the server, access the gallery by opening a web browser and navigating to:

http://localhost:8080

Features:

  • Click on folders to navigate directories
  • Click on images to view them in a lightbox
  • Use arrow keys to navigate between images in lightbox view
  • Press Escape to exit lightbox view
  • Use "Clear Cache" button to refresh thumbnails and image cache

Troubleshooting

Access the debug page for detailed information about the server status, SSH connection, and cache:

http://localhost:8080/debug

Caching

The application caches thumbnails and recently viewed images in:

  • ~/.cache/pyremoteview/thumbnails
  • ~/.cache/pyremoteview/images

To clear the cache, use the "Clear Cache" button in the web interface or delete these directories.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyremoteview-1.0.0.tar.gz (14.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pyremoteview-1.0.0-py3-none-any.whl (13.8 kB view details)

Uploaded Python 3

File details

Details for the file pyremoteview-1.0.0.tar.gz.

File metadata

  • Download URL: pyremoteview-1.0.0.tar.gz
  • Upload date:
  • Size: 14.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.7

File hashes

Hashes for pyremoteview-1.0.0.tar.gz
Algorithm Hash digest
SHA256 a712cf2ec4cb28139f7d5e80dcc6b0be3fa9e70424f9b65efce55e4d6ad159a4
MD5 04874fd54bb79ae531b5dea12d288744
BLAKE2b-256 a76c27b37913f8669003a6bcc4d7e17093838de5233da4c534a2460c91b2a28c

See more details on using hashes here.

File details

Details for the file pyremoteview-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: pyremoteview-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 13.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.7

File hashes

Hashes for pyremoteview-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e0e9d58931f61b3220589197bf525e26fef99deee5c2d605c10a8f29476df327
MD5 94397095fe3c31f2174eb9dfacda3734
BLAKE2b-256 b500740d25690dd2a5fbb638d7706adb91c135b21c58050843889993bff75be0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page