diff --git a/README.md b/README.md index 4aa6fac..248517c 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,22 @@ + +
+ Instameex logo +
+

+

+

Mix your SDR and HDR exports into an Instagram-ready HDR photo.

+
+

+
+ Instameex screenshot +
+ + > [!NOTE] > ⚠️ _This is an heavily vibe-coded proof of concept — **do not expose it to the internet** — use it at your own risk._ -> _Github repo is a mirror of https://git.djeex.fr/Djeex/insta-hdr-converter. You'll find full package, history and release note there._ +> _Github repo is a mirror of https://git.djeex.fr/Djeex/instameex. You'll find full package, history and release note there._ -# Instagram HDR Assembler +# Instameex A small web front end for assembling Instagram-compatible HDR JPEGs (gain map) from an SDR export and an HDR export out of Lightroom or Camera Raw. @@ -13,9 +27,6 @@ itself based on the reverse-engineering work of [karachungen/instagram-hdr-converter](https://github.com/karachungen/instagram-hdr-converter). Original MIT license kept in [LICENSE](LICENSE). - -![Instagram HDR Assembler screenshot](illustration/insta-hdr-1.png) - ## How it works 1. Upload an SDR file (`.jpg`/`.jpeg`) and an HDR file: either a gain-map diff --git a/docker/compose.yaml b/docker/compose.yaml index 300a008..71caab7 100644 --- a/docker/compose.yaml +++ b/docker/compose.yaml @@ -1,11 +1,12 @@ -name: instagram-hdr +name: instameex services: hdr-web: build: context: .. dockerfile: docker/Dockerfile - container_name: instagram-hdr-web + image: instameex + container_name: instameex restart: unless-stopped ports: - "5050:5000" # host:container — change 5050 if that's taken too \ No newline at end of file diff --git a/docker/entrypoint.sh b/docker/entrypoint.sh index 3123c48..f11b8c2 100755 --- a/docker/entrypoint.sh +++ b/docker/entrypoint.sh @@ -6,13 +6,12 @@ NC="\033[0m" VERSION=$(cat /app/VERSION) -echo -e "${CYAN}╭──────────────────────────────────────────────────╮${NC}" -echo -e "${CYAN}│${NC} Instagram ${CYAN}HDR${NC} Assembler — version ${VERSION} ${CYAN}│${NC}" -echo -e "${CYAN}├──────────────────────────────────────────────────┤${NC}" -echo -e "${CYAN}│${NC} License: MIT (see LICENSE) ${CYAN}│${NC}" -echo -e "${CYAN}│${NC} Gain-map pipeline adapted from: ${CYAN}│${NC}" -echo -e "${CYAN}│${NC} kostis-kounadis/instagram-hdr-assembler ${CYAN}│${NC}" -echo -e "${CYAN}╰──────────────────────────────────────────────────╯${NC}" +echo -e "${CYAN}╭──────────────────────────────────────────────╮${NC}" +echo -e "${CYAN}│${NC} Instam${CYAN}eex${NC} - Version ${VERSION} ${CYAN}│${NC}" +echo -e "${CYAN}├──────────────────────────────────────────────┤${NC}" +echo -e "${CYAN}│${NC} Source: https://git.djeex.fr/Djeex/instameex ${CYAN}│${NC}" +echo -e "${CYAN}│${NC} Mirror: https://github.com/Djeex/instameex ${CYAN}│${NC}" +echo -e "${CYAN}╰──────────────────────────────────────────────╯${NC}" echo -e "[~] Checking required external tools..." missing="" @@ -27,5 +26,5 @@ if [ -n "$missing" ]; then fi echo -e "[✓] Required tools found: ultrahdr_app, exiftool" -echo -e "[~] Starting Instagram HDR Assembler web server..." +echo -e "[~] Starting Instameex web server..." exec gunicorn --bind 0.0.0.0:5000 --workers 1 --threads 4 --timeout 120 main:app diff --git a/main.py b/main.py index da83164..004b90d 100644 --- a/main.py +++ b/main.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 """ -Instagram HDR Assembler — Web Front +Instameex - Web Front ------------------------------------ Flask front end for assembling Instagram-compliant HDR JPEGs (gain map injection adapted from kostis-kounadis/instagram-hdr-assembler — see diff --git a/src/assets/css/style.css b/src/assets/css/style.css index a19d846..8dc502b 100644 --- a/src/assets/css/style.css +++ b/src/assets/css/style.css @@ -49,10 +49,18 @@ body { margin: 0 0 0.6rem; } +.logo { + display: block; + width: 290px; + max-width: 100%; + height: auto; + margin: 0 0 1.5rem; +} + h1 { font-family: var(--sans); - font-weight: 700; - font-size: 2rem; + font-weight: 600; + font-size: 1.7rem; line-height: 1.2; margin: 0 0 0.5rem; color: var(--text); diff --git a/src/assets/img/logo-long.svg b/src/assets/img/logo-long.svg new file mode 100644 index 0000000..16c667d --- /dev/null +++ b/src/assets/img/logo-long.svg @@ -0,0 +1,153 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/assets/img/logo.svg b/src/assets/img/logo.svg new file mode 100644 index 0000000..4181b5c --- /dev/null +++ b/src/assets/img/logo.svg @@ -0,0 +1,141 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/templates/index.html b/src/templates/index.html index b91f174..b4c182a 100644 --- a/src/templates/index.html +++ b/src/templates/index.html @@ -3,12 +3,13 @@ - Instagram HDR Assembler + Instameex +
-

Instagram HDR Assembler

+

Build your HDR JPEG for Instagram

Drop your SDR export and your HDR export from Lightroom / Camera Raw. The script does the rest — gain map, 4:2:0 subsampling, Instagram metadata injection. Add more pairs to process several photos in one go.

@@ -58,13 +59,13 @@ Lightroom's 32-bit float linear HDR TIFF export; a TIFF HDR file gives a more precise result than the JPEG gain-map route.

-

Instagram HDR Assembler v{{ app_version }}

+

Instameex v{{ app_version }}