vpv
Image viewer for image processing experts
File Explorer
Download Latest Version (.zip)- ci.yml
- clang-format-check.yml
- archlinux-aur.yml
- archlinux.yml
- debian-stable.yml
- debian-testing.yml
- fedora.yml
- nix.yml
- ubuntu-devel.yml
- ubuntu-focal.yml
- ubuntu-latest.yml
- ubuntu-rolling.yml
- AddCXXFlagsIfSupported.cmake
- FindOctave.cmake
- FindOpenEXR.cmake
- GenerateLuaFiles.cmake
- TargetEnableIPOIfSupported.cmake
- VPVFlags.cmake
- dirent.h
- doctest.h
- efsw.h
- efsw.hpp
- FileSystemImpl.cpp
- FileSystemImpl.hpp
- MutexImpl.cpp
- MutexImpl.hpp
- SystemImpl.cpp
- SystemImpl.hpp
- ThreadImpl.cpp
- ThreadImpl.hpp
- FileSystemImpl.cpp
- FileSystemImpl.hpp
- MutexImpl.cpp
- MutexImpl.hpp
- SystemImpl.cpp
- SystemImpl.hpp
- ThreadImpl.cpp
- ThreadImpl.hpp
- platformimpl.hpp
- base.hpp
- Debug.cpp
- Debug.hpp
- DirectorySnapshot.cpp
- DirectorySnapshot.hpp
- DirectorySnapshotDiff.cpp
- DirectorySnapshotDiff.hpp
- DirWatcherGeneric.cpp
- DirWatcherGeneric.hpp
- FileInfo.cpp
- FileInfo.hpp
- FileSystem.cpp
- FileSystem.hpp
- FileWatcher.cpp
- FileWatcherCWrapper.cpp
- FileWatcherFSEvents.cpp
- FileWatcherFSEvents.hpp
- FileWatcherGeneric.cpp
- FileWatcherGeneric.hpp
- FileWatcherImpl.cpp
- FileWatcherImpl.hpp
- FileWatcherInotify.cpp
- FileWatcherInotify.hpp
- FileWatcherKqueue.cpp
- FileWatcherKqueue.hpp
- FileWatcherWin32.cpp
- FileWatcherWin32.hpp
- inotify-nosys.h
- Lock.hpp
- Log.cpp
- Mutex.cpp
- Mutex.hpp
- sophist.h
- String.cpp
- String.hpp
- System.cpp
- System.hpp
- Thread.cpp
- Thread.hpp
- Utf.hpp
- Utf.inl
- Watcher.cpp
- Watcher.hpp
- WatcherFSEvents.cpp
- WatcherFSEvents.hpp
- WatcherGeneric.cpp
- WatcherGeneric.hpp
- WatcherInotify.cpp
- WatcherInotify.hpp
- WatcherKqueue.cpp
- WatcherKqueue.hpp
- WatcherWin32.cpp
- WatcherWin32.hpp
- efsw-test.cpp
- CMakeLists.txt
- LICENSE
- Makefile
- README.md
- filesystem.hpp
- fnmatch.c
- fnmatch.h
- glob.c
- glob.h
- AUTHORS
- iio.c
- iio.h
- npy.c
- npy.h
- README
- imconfig_allegro5.h
- imgui_impl_allegro5.cpp
- imgui_impl_allegro5.h
- main.cpp
- README.md
- LaunchScreen.xib
- Main.storyboard
- Contents.json
- Shader.fsh
- Shader.vsh
- AppDelegate.h
- AppDelegate.m
- debug_hud.cpp
- debug_hud.h
- GameViewController.h
- GameViewController.m
- imgui_impl_ios.h
- imgui_impl_ios.mm
- Info.plist
- main.m
- Contents.json
- Contents.json
- AppDelegate.h
- AppDelegate.m
- Info.plist
- main.m
- project.pbxproj
- README.md
- build_win32.bat
- directx10_example.vcxproj
- directx10_example.vcxproj.filters
- imgui_impl_dx10.cpp
- imgui_impl_dx10.h
- main.cpp
- build_win32.bat
- directx11_example.vcxproj
- directx11_example.vcxproj.filters
- imgui_impl_dx11.cpp
- imgui_impl_dx11.h
- main.cpp
- build_win32.bat
- directx12_example.vcxproj
- directx12_example.vcxproj.filters
- imgui_impl_dx12.cpp
- imgui_impl_dx12.h
- main.cpp
- build_win32.bat
- directx9_example.vcxproj
- directx9_example.vcxproj.filters
- imgui_impl_dx9.cpp
- imgui_impl_dx9.h
- main.cpp
- gl3w.c
- gl3w.h
- glcorearb.h
- khrplatform.h
- glfw3.h
- glfw3native.h
- glfw3.lib
- glfw3.lib
- COPYING.txt
- README.txt
- uSynergy.c
- uSynergy.h
- app.icf
- imgui_impl_marmalade.cpp
- imgui_impl_marmalade.h
- main.cpp
- marmalade_example.mkb
- build_win32.bat
- main.cpp
- build_win32.bat
- imgui_impl_glfw_gl2.cpp
- imgui_impl_glfw_gl2.h
- main.cpp
- Makefile
- opengl2_example.vcxproj
- opengl2_example.vcxproj.filters
- build_win32.bat
- imgui_impl_glfw_gl3.cpp
- imgui_impl_glfw_gl3.h
- main.cpp
- Makefile
- opengl3_example.vcxproj
- opengl3_example.vcxproj.filters
- build_win32.bat
- imgui_impl_sdl_gl2.cpp
- imgui_impl_sdl_gl2.h
- main.cpp
- Makefile
- README.md
- sdl_opengl2_example.vcxproj
- sdl_opengl2_example.vcxproj.filters
- build_win32.bat
- imgui_impl_sdl_gl3.cpp
- imgui_impl_sdl_gl3.h
- main.cpp
- Makefile
- README.md
- sdl_opengl3_example.vcxproj
- sdl_opengl3_example.vcxproj.filters
- build_win32.bat
- build_win64.bat
- CMakeLists.txt
- gen_spv.sh
- glsl_shader.frag
- glsl_shader.vert
- imgui_impl_glfw_vulkan.cpp
- imgui_impl_glfw_vulkan.h
- main.cpp
- vulkan_example.vcxproj
- vulkan_example.vcxproj.filters
- imgui_examples.sln
- README.txt
- binary_to_compressed_c.cpp
- Cousine-Regular.ttf
- cousine_regular.c
- DroidSans.ttf
- Karla-Regular.ttf
- ProggyClean.ttf
- ProggyTiny.ttf
- README.txt
- Roboto-Medium.ttf
- imgui_freetype.cpp
- imgui_freetype.h
- README.md
- imgui.natvis
- README.txt
- CHANGELOG.txt
- imconfig.h
- imgui.cpp
- imgui.h
- imgui_demo.cpp
- imgui_draw.cpp
- imgui_internal.h
- LICENSE.txt
- README.md
- stb_rect_pack.h
- stb_textedit.h
- stb_truetype.h
- TODO.txt
- colorcoordsf.c
- fail.c
- getpixel.c
- help_stuff.c
- parsenumbers.c
- plambda.c
- random.c
- smapa.h
- xmalloc.c
- lua_function_def.hpp
- lua_ref_impl.hpp
- lua_table_def.hpp
- lua_variant_def.hpp
- another_binding_api.hpp
- compatibility.hpp
- config.hpp
- error_handler.hpp
- exception.hpp
- function_tuple_def.hpp
- kaguya.hpp
- lua_ref.hpp
- lua_ref_function.hpp
- lua_ref_table.hpp
- metatable.hpp
- native_function.hpp
- native_function_cxx03.hpp
- native_function_cxx11.hpp
- object.hpp
- optional.hpp
- preprocess.hpp
- preprocess_repeate.hpp
- push_any.hpp
- push_tuple.hpp
- ref_tuple.hpp
- state.hpp
- traits.hpp
- type.hpp
- utility.hpp
- utility_cxx03.hpp
- utility_cxx11.hpp
- lapi.c
- lapi.h
- lauxlib.c
- lauxlib.h
- lbaselib.c
- lbitlib.c
- lcode.c
- lcode.h
- lcorolib.c
- lctype.c
- lctype.h
- ldblib.c
- ldebug.c
- ldebug.h
- ldo.c
- ldo.h
- ldump.c
- lfunc.c
- lfunc.h
- lgc.c
- lgc.h
- linit.c
- liolib.c
- ljumptab.h
- llex.c
- llex.h
- llimits.h
- lmathlib.c
- lmem.c
- lmem.h
- loadlib.c
- lobject.c
- lobject.h
- lopcodes.c
- lopcodes.h
- lopnames.h
- loslib.c
- lparser.c
- lparser.h
- lprefix.h
- lstate.c
- lstate.h
- lstring.c
- lstring.h
- lstrlib.c
- ltable.c
- ltable.h
- ltablib.c
- ltests.c
- ltests.h
- ltm.c
- ltm.h
- lua.c
- lua.h
- lua.hpp
- luac.c
- luaconf.h
- lualib.h
- lundump.c
- lundump.h
- lutf8lib.c
- lvm.c
- lvm.h
- lzio.c
- lzio.h
- Makefile
- onelua.c
- 23.svg
- drawing.svg
- example1.c
- example2.c
- nano.svg
- screenshot-1.png
- screenshot-2.png
- stb_image_write.h
- nanosvg.h
- nanosvgrast.h
- LICENSE.txt
- premake4.lua
- README.md
- alphanum.hpp
- expected.hpp
- reproc.cmake
- drain.c
- env.c
- parent.c
- path.c
- poll.c
- read.c
- run.c
- drain.h
- export.h
- reproc.h
- run.h
- argv.c
- deadline.c
- env.c
- io.c
- overflow.c
- path.c
- pid.c
- sleep.h
- stop.c
- working-directory.c
- clock.h
- clock.posix.c
- clock.windows.c
- drain.c
- error.h
- error.posix.c
- error.windows.c
- handle.h
- handle.posix.c
- handle.windows.c
- init.h
- init.posix.c
- init.windows.c
- macro.h
- options.c
- options.h
- pipe.h
- pipe.posix.c
- pipe.windows.c
- process.h
- process.posix.c
- process.windows.c
- redirect.c
- redirect.h
- redirect.posix.c
- redirect.windows.c
- reproc.c
- run.c
- strv.c
- strv.h
- utf.h
- utf.posix.c
- utf.windows.c
- argv.c
- assert.h
- deadline.c
- env.c
- fork.c
- io.c
- overflow.c
- path.c
- pid.c
- stop.c
- working-directory.c
- CMakeLists.txt
- reproc-config.cmake.in
- reproc.pc.in
- background.cpp
- drain.cpp
- forward.cpp
- run.cpp
- array.hpp
- type_traits.hpp
- arguments.hpp
- drain.hpp
- env.hpp
- export.hpp
- input.hpp
- reproc.hpp
- run.hpp
- reproc.cpp
- CMakeLists.txt
- reproc++-config.cmake.in
- reproc++.pc.in
- CHANGELOG.md
- CMakeLists.txt
- LICENSE
- README.md
- format.sh
- genluafiles.sh
- icon.icns
- icon.ico
- icon.png
- icon.svg
- icons.png
- MacOSXBundleInfo.plist.in
- resources.rc
- vpv.desktop
- vpv.m
- vpv.py
- cxxbridge.rs
- lib.rs
- build.rs
- Cargo.lock
- Cargo.toml
- CMakeLists.txt
- collection_expression.cpp
- collection_expression.hpp
- Colormap.cpp
- Colormap.hpp
- config.cpp
- config.hpp
- DisplayArea.cpp
- DisplayArea.hpp
- dragndrop.cpp
- dragndrop.hpp
- EditGUI.cpp
- EditGUI.hpp
- editors.cpp
- editors.hpp
- events.cpp
- events.hpp
- fs.hpp
- FuzzyFinder.cpp
- FuzzyFinder.hpp
- globals.cpp
- globals.hpp
- Histogram.cpp
- Histogram.hpp
- icons.cpp
- icons.hpp
- icons_tileset.c
- Image.cpp
- Image.hpp
- ImageCache.cpp
- ImageCache.hpp
- ImageCollection.cpp
- ImageCollection.hpp
- ImageProvider.cpp
- ImageProvider.hpp
- imgui_custom.cpp
- imgui_custom.hpp
- layout.cpp
- layout.hpp
- LoadingThread.cpp
- LoadingThread.hpp
- luafiles.hpp
- main.cpp
- menu.cpp
- menu.hpp
- OpenGLDebug.cpp
- OpenGLDebug.hpp
- plambda.h
- Player.cpp
- Player.hpp
- Progressable.hpp
- Sequence.cpp
- Sequence.hpp
- Shader.cpp
- Shader.hpp
- shaders.cpp
- shaders.hpp
- strutils.cpp
- strutils.hpp
- SVG.cpp
- SVG.hpp
- Terminal.cpp
- Terminal.hpp
- tests_runner.cpp
- Texture.cpp
- Texture.hpp
- View.cpp
- View.hpp
- watcher.cpp
- watcher.hpp
- Window.cpp
- Window.hpp
- wrapplambda.c
- .clang-format
- CMakeLists.txt
- flake.lock
- flake.nix
- LICENSE
- README.md
- vpvrc
# Installation Guide
git clone https://github.com/kidanger/vpv
Downloads the entire project code from GitHub to your computer.
cd vpv
Moves into the project folder you just downloaded.
2. Official Install Script
Easy Recommended- APT (Debian/Ubuntu κ³μ΄) Built into Debian/Ubuntu-based Linux distributions.
- Homebrew A package manager for macOS/Linux.
sudo apt install g++ cmake libsdl2-dev libpng-dev libtiff-dev libjpeg-dev
Installs directly from the APT package repository (Debian/Ubuntu-based).
brew install cmake sdl2 libpng libtiff libjpeg
Installs the pre-built package via Homebrew β no source build required.
Pulled directly from this repo's README.
3. CMake
Mediumsudo apt install g++ cmake libsdl2-dev libpng-dev libtiff-dev libjpeg-dev
Installs directly from the APT package repository (Debian/Ubuntu-based).
brew install cmake sdl2 libpng libtiff libjpeg
Installs the pre-built package via Homebrew β no source build required.
cmake ..
Analyzes the source code and generates build configuration files (must be run inside the build folder).
Pulled directly from this repo's README.
4. Rust
Medium- Git Needed to download the project code from GitHub.
- Rust (rustup) Installing via rustup also installs cargo.
cd src/fuzzy-finder
This project's files live in a subfolder, so move into it first.
cargo build --release
Compiles the Rust project.
cargo run
Builds and then immediately runs the program.
5. Make
Medium- Git Needed to download the project code from GitHub.
- Make Usually pre-installed on Linux/macOS. On Windows, install separately (e.g. via MSYS2 or WSL).
make
Compiles the code based on the generated build configuration to produce an executable.
Pulled directly from this repo's README.
