aboutsummarylogtreecommitdiffstats
path: root/README.md
blob: 8030b7a16241321de1d028a3fb833f7c9441e8a8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
# fey

fey is a minimalistic, high-performance image viewer for Wayland, written in C++. It focuses on speed, smooth animations, and efficiency.


<p align="center">
  <img src="src/picture.png" alt="Homepage Screenshot" width="80%">
</p>

## Features

- **Performance**: Direct-to-SHM rendering for zero-copy buffer updates.
- **Smooth Animations**: Hardware-synchronized rubber-band physics for zoom and pan limits.
- **GIF Support**: Full animated GIF playback with adaptive frame-rate synchronization.
- **Energy Efficient**: Adaptive refresh rate and intelligent event throttling to minimize CPU/Power usage.
- **Metadata**: Pre-cached EXIF photographic metadata display using `exiv2`.
- **Gestures**: Native Wayland pinch-to-zoom and pan support.

## Build & Install

### Dependencies
- `wayland`
- `wayland-protocols`
- `cairo`
- `exiv2` (for metadata)

### Compile
```bash
make
```

### Install
```bash
sudo make install
```

## Hotkeys

- `q`: Quit
- `Left` / `Right`: Previous / Next image
- `+` / `-`: Zoom in / out (discrete steps)
- `Ctrl + Arrow Keys`: Pan image
- `f`: Toggle fullscreen
- `i`: Toggle info overlay
- **Mouse Drag**: Pan image
- **Pinch Gesture**: Zoom/Pan

## License
MIT