Convert to proper python package

This commit is contained in:
Kylian Schmidt
2026-04-22 13:48:23 +02:00
parent 7e36688d1d
commit 27ea17246c
52 changed files with 6888 additions and 246 deletions
+11 -31
View File
@@ -1,23 +1,20 @@
# 🔬 Scientific Gallery Generator
# Gallery: Scientific Plot Gallery Generator
[![Python 3.12+](https://img.shields.io/badge/python-3.12+-blue.svg)](https://www.python.org/downloads/)
[![Python 3.8+](https://img.shields.io/badge/python-3.8+-blue.svg)](https://www.python.org/downloads/)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![Maintenance](https://img.shields.io/badge/Maintained%3F-yes-green.svg)](https://GitHub.com/Naereen/StrapDown.js/graphs/commit-activity)
[![Coverage Report](https://gitlab.etp.kit.edu/kschmidt/web/badges/main/coverage.svg)](https://gitlab.etp.kit.edu/kschmidt/web/-/jobs)
A powerful, responsive web-based gallery generator for scientific plots and analysis results. Transform your PDF plots into interactive HTML galleries with search, comparison tools, and hierarchical metadata management.
A professional, production-ready Python package for creating responsive HTML galleries from scientific plot collections. Convert PDFs to PNG, organize plots hierarchically, and generate beautiful static websites.
## ✨ Features
### 🎯 Core Functionality
### Core Functionality
- **PDF to PNG Conversion**: Automatic high-quality thumbnail generation using ImageMagick
- **Incremental Updates**: Only processes files when source is newer than target
- **Responsive Design**: Mobile-friendly interface with multiple view modes
- **Hierarchical Organization**: Support for nested folder structures
- **Search & Navigation**: Real-time search with fuzzy matching
### 📊 Advanced Features
### Advanced Features
- **Plot Comparison**: Side-by-side comparison tool for analyzing differences
- **Metadata Management**: YAML/JSON metadata with inheritance and display
- **Export Capabilities**: Batch export selected plots
@@ -25,29 +22,12 @@ A powerful, responsive web-based gallery generator for scientific plots and anal
- **Theme Support**: Dark/light theme toggle
- **Keyboard Shortcuts**: Power-user navigation
### 🔧 Metadata System
- **Hierarchical Inheritance**: Child directories inherit parent metadata
- **Multiple Formats**: Support for YAML and JSON metadata files
- **Interactive Display**: Collapsible metadata sections with copy-to-clipboard
- **LaTeX Support**: Mathematical expressions rendered with MathJax
- **Path Information**: Easy access to metadata file locations
## 🚀 Quick Start
### Prerequisites (when running barebones)
```bash
# Required system dependencies
sudo apt-get install imagemagick python3 python3-pip
# Python dependencies
pip install jinja2 pyyaml
```
### Installation
1. **Clone the repository**
### Developer-Friendly
- **Python API**: Import and use programmatically in other projects
- **CLI Interface**: Command-line tool for git-clone based deployments
- **Configuration Flexibility**: YAML config file or pure Python objects
- **Error Handling**: Returns False instead of raising, with optional verbose output
- **Source Override**: Process single directories without full regeneration
```bash
git clone <repository-url>
cd scientific-gallery-generator