An OpenGL based image viewer!
Explore the docs »
View Demo 🚧
·
Report Bug
·
Request Feature
igl
is a bitmap image viewer aiming at being:
- 🚀 fast!
- 🧙♂️ smart/ahead image loading
- 👷♀️ simple and intuitive functionality
- ⌨️ keyboard friendly
- 🕶️ awesome
And it's pronounced eagle.
🚧 Note: this is still work in progress, so please expect some uncaught exceptions and crashes.
igl
is built on top of amazing software:
In order to build the app also make sure you have:
- 🧰
cmake 3.10
- 🐍
python
(optional: to installglad
and fetch the latest loader source files)
For my fellow linux users, you may go straight to the releases page, fetch the latest binary (AppImage) and conveniently add it to your system without having to go through the building process:
$ wget https://github.com/gmagno/igl/releases/latest/download/igl-???????-x86_64.AppImage
$ chmod +x igl-*-x86_64.AppImage
$ sudo ln -s /path/to/igl-*-x86_64.AppImage /usr/local/bin/igl # optional
Apart from glad
dependencies are managed as git submodules, don't forget to clone the repo recursively !
- Get the source:
$ git clone --recursive https://github.com/gmagno/igl && cd igl
You may, optionally, download the latest OpenGL Loader files with glad
:
$ python3 -m venv .venv # creates a python virtual environment
$ source .venv/bin/activate # activate the virtual environment
$ python3 -m pip install glad # installs glad with which we fetch the source
$ glad --generator c --out-path ext/glad # overrides whatever is in ext/glad
- Build
$ mkdir build && cd build
$ cmake ..
$ make -j $(nproc)
- Install
$ sudo cp igl /usr/local/bin # or wherever pleases you
- Enjoy! 🥳
The app accepts a single positional argument, a path to either an image file or a directory. Easy peasy lemon squeezy 🍋
$ igl path/to/awesome-image.png # or igl path/to/dir/
The --help
flag won't provide more info than that, but here it goes for completness anyway 🤓
$ igl -h
IGL - Image OpenGL
Usage: igl [OPTIONS] [path]
Positionals:
path TEXT Path to image or directory
Options:
-h,--help Request help
Once the app is launched you may press the h
key on your keyboard to see the available shortcut keys:
Function | Key | |
---|---|---|
👩🏫 | Show the help window | h |
Image panning | drag while pressing the middle mouse button |
|
w , a , s , d |
||
[Shift +] mouse wheel |
||
🔍 | Image zoom in/out | Ctrl + mouse wheel |
Ctrl + = /- |
||
🎯 | Image recenter | c |
⏮️⏭️ | Image select next/prev | Alt + mouse wheel |
j , k |
||
📂 | Show files list window | e |
🧹 | Reset windows layout | r |
☀️🌑 | Toggle theme {dark, light, classic} | t |
🚪 | Quit | q |
If you're wondering about the font used in the app, it's called Hermit and it is gorgeous! Kudos to @pcaro90 for the lovely work.
Distributed under the MIT License. See LICENSE
for more information.
Gonçalo Magno - @gmagno6 - goncalo.magno@gmail.com
Project Link: https://github.com/gmagno/igl