Miscible is a next-generation, high-performance gallery application which brings on device semantic search and extensive filtering features to your local media. Built in C++, it delivers lightning-fast responsiveness and an incredibly light footprint all within a ~8MB binary. It brings the advanced features typically locked behind cloud-based commercial products like Google Photos, OneDrive, and Microsoft Photos to your local machine, completely offline and privacy-first.
Miscible running on Windows 10
I made this because nothing like this exists and I love taking pictures 📸
Note
Development Status: Miscible is currently in an active alpha stage, things are expected to fail/break. Make sure to report any findings on the issues page.
Miscible only supports Windows and Linux because these are the only operating systems I have available, out of which Windows is the one I actively use to develop Miscible (for now), so Linux build is currently broken and outdated. (contributions are welcome)
- Recursively Clone the repo
git clone --recursive https://github.com/mdhvg/miscible
cd miscible- Run the setup script
python3 ./scripts/setup.pyOR
uv run ./scripts/setup.pyBuild script automatically detects installed compiler. Supported ones are msvc and clang-cl. Miscible.exe is built in (project root)/build directory.
./scripts/build.ps1 [debug|release] [msvc|clang-cl]TODO
- From the first launch, Miscible will start downloading the
laion/CLIP-ViT-B-32-laion2B-s34B-b79Kautomatically in the background. - To get some images displaying in Miscible, click the ➕ button in the sidebar and select an and let it automatically scan the directories and populate the thumbnail previews.
- Use the Search/Sort/Add Filter buttons according to requirements to view results with different constraints (inclusion or exclusion).
- Press Clear button to go back to viewing all images again.
Create an issue and paste in the logs relevant to that bug.
| Operating System | Log file location |
|---|---|
| Windows | %LOCALAPPDATA%/Miscible/logs/ |
| Linux | ~/.local/share/Miscible/logs/ |
Although there are many things that need refactoring to follow the style (#TODO), the code style and build procedure in this software is heavily inspired by @Casey Muratori's Handmade Hero series (YouTube).
A lot of core code snippets come from EpicGamesExt/raddebugger.
src/base/arena.*from Enter The Arena: Simplifying Memory Management (2023) by @Ryan Fleury and from tsoding/arena by @tsoding.src/base/string.*,src/base/array.hfrom Vjekoslav Krajačić – File Pilot: Inside the Engine – BSC 2025 at @BSC 2025 talk by @Vjekoslav Krajačić.