Click anywhere with only a few key strokes
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
bin
config
images
scripts
spec
src
.dockerignore
.gitignore
.travis.yml
CONTRIBUTING.md
Dockerfile
LICENSE
Makefile
README.md
shard.lock
shard.yml

README.md

Firegrid

Build Status

Firegrid strives to make pointer-driven interfaces easier and faster for users to operate. It allows you to move the pointer and click quickly to most points on the screen with only a few key strokes.

How so?

You select a piece of the screen. The sceen is initialy entirely covered with a grid. Each key will select a tile of the grid and create another grid inside. Once a selected tile is precise enough, the mouse pointer will move to the tile center and a mouse click will be triggered.

More images here.

Is it fast?

On most screens, three key strokes will trigger a click. The initial grid format is calculated according to the screen ratio, which means that two screens with the same ratio will get the same grid (e.g a 1080p and a 4k screen) and the same number of required key strokes.

Supported platforms

Firegrid only works on Linux in X11. Firegrid is written with Qt 5 so it should not be hard to port it in Wayland or even over MacOS / Windows.

Installation

On Archlinux

Firegrid is available in the AUR: firegrid

You can install it using makepkg like this:

$ git clone https://aur.archlinux.org/firegrid.git
$ cd firegrid
$ makepkg -si
$ cd ..
$ rm -r firegrid

Or you could use an AUR helper:

e.g: With yaourt

$ yaourt -S firegrid

Build from sources

To build firegrid from sources, you only need Docker.

Run the following command:

$ sh scripts/build.sh

You will then find the firegrid binary in the bin directory:

$ ./bin/firegrid

Configuration

Firegrid configuration file resides in $HOME/.config/firegrid/firegrid.toml.

A configuration file sample is available here.

This file must follow the TOML specification.

Development

To hack on firegrid, you can run a Docker container with every dependency required to build, run the application and launch the test suite:

$ sh scripts/hack.sh

N.b: If you get the following error: QXcbConnection: Could not connect to display, you need to install xhost and run the following command: xhost + before running the script.

Inside the container you can:

  • Build the binary with: make
  • Install crystal shards: make dependencies
  • Compile and run the application with: make dev
  • Launch the test suite with: make test

Contributing

Before sending a pull request, please checkout the contribution guidelines.

Authors

Licensing

Firegrid is licensed under the MIT License. See LICENSE for full license text.