summaryrefslogtreecommitdiffstats
path: root/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'README.md')
-rw-r--r--README.md52
1 files changed, 40 insertions, 12 deletions
diff --git a/README.md b/README.md
index 168edfd..a056891 100644
--- a/README.md
+++ b/README.md
@@ -5,6 +5,44 @@ back end, plain HTML/CSS/JS front end. Live at **https://albumen.jots.org**.
---
+## Features
+
+### Browsing
+- Nested album hierarchy — every directory is an album, unlimited nesting
+- Grid view with auto-generated 300×300 thumbnails (images, video frames, audio placeholder)
+- Chronological photo sorting when EXIF dates are present, filename order otherwise
+- Live search/filter box to narrow albums by name
+- Breadcrumb navigation
+- Lightbox with keyboard (← →, Esc) and touch-swipe navigation
+- Info panel showing filename, EXIF date, and pixel dimensions
+- Shareable per-photo URLs (`?photo=filename`) that open the lightbox directly
+- Social media link previews via Open Graph meta tags (album cover or specific photo)
+
+### Slideshow
+- Per-album or root-level (all photos across every album)
+- Shuffle and Full screen options selectable before launch
+- Respects the current album filter — filtered view launches a filtered slideshow
+- Cross-fade transitions with configurable interval (1–60 s)
+- Keyboard (← →, Space, F), touch swipe, and on-screen controls
+- Click/tap a photo during slideshow to jump to its album lightbox
+
+### Admin
+- Single admin account; password stored as a PBKDF2-SHA256 hash (no native gem needed)
+- Logging in from an album page redirects back to that album's edit view
+- Per-album: title, description, cover image (specific file or random), sub-album order, visibility
+- Per-file: caption, visibility
+- Save button at top and bottom of the edit form
+
+### Media support
+
+| Category | Extensions |
+|---|---|
+| Images | jpg jpeg png gif webp heic heif tiff bmp |
+| Videos | mp4 mov avi mkv webm m4v ogv |
+| Audio | mp3 flac ogg wav m4a aac |
+
+---
+
## Directory layout
| Path | Purpose |
@@ -80,8 +118,7 @@ You can edit these by hand or through the admin UI at `/admin`.
{
"title": "Italy 2024", // overrides the directory name in the UI
"description": "Two weeks in Rome and Florence",
- "cover": "DSC_0042.jpg", // which file to use as album thumbnail
- "cover_dynamic": false, // true = play video/animation on hover
+ "cover": "DSC_0042.jpg", // specific file, or "__random__" for a random pick
"visible": true, // false = hidden from non-admin users
"files": {
"DSC_0042.jpg": {
@@ -116,7 +153,7 @@ ssh root@albumen.jots.org
ruby /opt/albumen/scripts/set_password.rb
```
-The bcrypt hash is stored in `/opt/albumen/config.yml` (readable only by the
+The PBKDF2-SHA256 hash is stored in `/opt/albumen/config.yml` (readable only by the
`albumen` service user).
---
@@ -187,12 +224,3 @@ scp -r /home/ken/albumen/. root@albumen.jots.org:/opt/albumen/
ssh root@albumen.jots.org 'chown -R albumen:albumen /opt/albumen && systemctl restart albumen'
```
----
-
-## Supported file types
-
-| Category | Extensions |
-|---|---|
-| Images | jpg jpeg png gif webp heic heif tiff bmp |
-| Videos | mp4 mov avi mkv webm m4v ogv |
-| Audio | mp3 flac ogg wav m4a aac |