Skip to content

A screenshot app written in Rust 📸🦀

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT
Notifications You must be signed in to change notification settings

nik-rev/ferrishot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


ferrishot

Screenshot app written in Rust, inspired by flameshot.

Showcase

ferrishot.mp4

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/ferrishot/releases/latest/download/ferrishot-installer.ps1 | iex"

Shell

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/nik-rev/ferrishot/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