ferrishot

Crates.ioferrishot
lib.rsferrishot
version0.2.0
created_at2025-04-12 22:32:02.915157+00
updated_at2025-04-16 21:27:20.025278+00
descriptionA cross-platform desktop screenshot app
homepagehttps://github.com/nik-rev/ferrishot
repositoryhttps://github.com/nik-rev/ferrishot
max_upload_size
id1631315
size335,682
Nik Revenco (nik-rev)

documentation

README


ferrishot

Screenshot app written in Rust, inspired by flameshot.

Showcase

https://github.com/user-attachments/assets/ebbbfe85-b81e-4f26-9453-545dd1b2ce38

Features

Run by writing ferrishot on the command line.

  • Select a region on the screen by left clicking and dragging
  • Resize the region by dragging on any of the sides or corners and dragging
  • Move the region around by dragging in the center
  • Enter copies screenshot region to clipboard
  • Ctrl s saves screenshot region as a file
  • F11 selects the entire monitor
  • Instantly copy region to clipboard with --instant flag
  • Holding Shift while resizing or dragging will resize or move the selection 10 times slower
  • Size indicator allows setting an absolute width and height for the screenshot
  • Esc exits

This project is under heavy development, and we have a lot of plans. A list of planned features can be found in TODO.md.

Platform Support

  • Windows
  • MacOS
  • Linux (X11)
  • Linux (Wayland)

Installation

Homebrew

brew install nik-rev/tap/ferrishot

PowerShell

powershell -ExecutionPolicy Bypass -c "irm https://github.com/nik-rev/countryfetch/releases/latest/download/ferrishot-installer.ps1 | iex"

Shell

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/nik-rev/countryfetch/releases/latest/download/ferrishot-installer.sh | sh

Nix

Add it to your flake.nix:

# add it to your inputs
inputs.ferrishot.url = "github:nik-rev/ferrishot/main";
# then use it in home-manager for example
inputs.ferrishot.packages.${pkgs.system}.default

Cargo

If you use Linux, see CONTRIBUTING.md for details on which dependencies you will need.

cargo install ferrishot
Commit count: 447

cargo fmt