mirror of
https://github.com/mars-marcelyn/Shuffle-Lab.git
synced 2026-07-22 07:44:45 +00:00
No description
| lang | ||
| .gitignore | ||
| LICENSE | ||
| main.js | ||
| manifest.json | ||
| README.md | ||
| styles.css | ||
Shuffle Lab
Timed, randomized fullscreen image slideshows for drawing practice, presentations, and more.
What's new in 1.0.4
New features
- Break system — configurable break frequency, duration presets, custom break duration, fullscreen break overlay with countdown
- Infinite time mode — manual-only navigation, no auto-advance, JSON-safe persistence
- Settings UI groups with dividers for cleaner layout
- Break timer warning color when session will expire mid-break
- Disable breaks when Infinite duration is selected, with descriptive warning
- Timer display uses adaptive format (s / m:s / hⓂ️s)
Bug fixes
- Custom duration inputs now capped at 9999s with digits-only validation
- End-of-deck screen waits for user input instead of auto-advancing
- Session description text updated to reflect breaks in total time calculation
Features
- Fullscreen slideshow with randomized images from any vault folder
- Configurable duration per image with presets (30s, 60s, 2min, 5min, custom, infinite)
- Loop toggle — choose whether to repeat images or stop when they run out
- Session timer with real-time display
- Break system — configurable break frequency and duration between images
- Intro prompt slide (optional markdown file per folder)
- Session logging to prioritize unseen images next session
- Language support (desktop only)
Usage
- Open Settings → Shuffle Lab and set your Main directory (the root folder containing your reference image subfolders).
- Click the shuffle icon in the ribbon or run the New session command.
- Select a folder, adjust settings, and click Start Session.
- Press Space to pause/resume, ◀/▶ to navigate, ESC to exit.
Installation
From Community Plugins (desktop)
Search for "Shuffle Lab" in Community Plugins and install.
Manual / mobile
Copy main.js, manifest.json, and styles.css to .obsidian/plugins/shuffle-lab/ in your vault.
Localization (desktop only)
- Navigate to your vault's
.obsidian/plugins/shuffle-lab/lang/folder. - Copy
en.json, rename it to your language code (e.g.de.json). - Translate all values (the text after the colons). Keep keys,
{0}placeholders, and\nunchanged. - Reload Obsidian, then select your language in Settings → Shuffle Lab.
The language dropdown only shows .json files present in the lang/ folder. On mobile, the plugin uses English only.
Contributing
Bug reports & feature requests
Open an issue on the GitHub repository. Include your platform (desktop/mobile), Obsidian version, and steps to reproduce.
Translations
See Localization above. Submit a pull request with your new .json file.
Code
The plugin is a single-file JavaScript plugin (main.js) with no build step. To get started:
- Clone the repo and open in your editor.
- Make changes to
main.js,styles.css, orlang/*.json. - Copy the files to your vault's
.obsidian/plugins/shuffle-lab/folder. - Reload Obsidian and test.
Pull requests are welcome. Keep changes focused and rebased on the latest main.
License
MIT