Dusk-Labs/dim has 4,122 GitHub stars and 182 forks. GitHot measured +1 stars in 24 hours. Last checked 2026-11-07 16:29 UTC. Last push 2025-09-21.
Dim, a media manager fueled by dark forces.
Measured star growth
- in 24h
- +1
- in 7 days
- Update delayed
- in 15 days
- Update delayed
- in 1 month
- Update delayed
Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.
README.md
OriginalDim
Dim is a self-hosted media manager. With minimal setup, Dim will organize and beautify your media collections, letting you access and play them anytime from anywhere.
Running from binaries
Dependencies
- libva2
- libva-drm2
- libharfbuzz
- libfontconfig
- libfribidi
- libtheora
- libvorbis
- libvorbisenc
- libtheora0
You can then obtain binaries from the release tab in github:
- Unpack with
unzip ./release-linux.zip && tar -xvzf ./release.tar.gz - Run
cd release && ./dim - Then you can access the Dim web UI through your browser with
http://0.0.0.0:8000(assuming it's running locally.)
Running with docker
The following command runs dim on port 8000, storing configuration in $HOME/.config/dim.
You may change that path if you'd like to store configuration somewhere else.
You can mount as many directories containing media as you like by repeating the -v HOST_PATH:CONTAINER_PATH option.
In this example, the path /media on the host is made available at the same path inside the Docker container.
This name "media" is arbitrary and you can choose whatever you like.
docker run -d -p 8000:8000/tcp -v $HOME/.config/dim:/opt/dim/config -v /media:/media:ro ghcr.io/dusk-labs/dim:dev
Mutiarch image resides at ghcr.io/dusk-labs/dim:master
To use hardware acceleration, mount the relevant device:
docker run -d -p 8000:8000/tcp -v $HOME/.config/dim:/opt/dim/config -v /media:/media:ro --device=/dev/dri/renderD128 ghcr.io/dusk-labs/dim:dev
Refer to docker-compose-template.yaml to run dim using Docker Compose.
Running from source
Dependencies
To run from source, you'll first need to install the following dependencies on your system:
- sqlite
- cargo
- rustc (nightly)
- yarn, npm
- libssl-dev
- libva2 (only if you're using Linux)
- libva-dev (only if you're using Linux)
- libva-drm2 (only if you're using Linux)
- ffmpeg
Once the dependencies are installed, clone the repository and build the project:
git clone https://github.com/Dusk-Labs/dim
yarn --cwd ui/ && yarn --cwd ui/ build
mkdir utils && ln -nfs $(which ffmpeg) utils/ffmpeg && ln -nfs $(which ffprobe) utils/ffprobe
If you're on Linux, run dim with:
cargo run --features vaapi --release
On other platforms where libva isn't available, run dim with:
cargo run --release
License
Dim is licensed under the AGPLv3 license (see LICENSE.md or https://opensource.org/licenses/AGPL-3.0)
Screenshots

Explore related projects
codecrafters-io/build-your-own-x
Master programming by recreating your favorite technologies from scratch.
560,941 starspublic-apis/public-apis
A collective list of free APIs
497,202 starsmorluto/rea
Reverse engineer anything with agents, from app behavior down to native binaries.
442,610 starsopenclaw/openclaw
The AI that really does things. Any OS. Any Platform. The lobster way. 🦞
394,181 stars