Hammerspoon – Lua-based powerful tool automation of macOS

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • hammerspoon

    Staggeringly powerful macOS desktop automation with Lua

  • I've used ZeroBrane to debug HS in the past: https://github.com/Hammerspoon/hammerspoon/issues/1268

  • spacehammer

    Hammerspoon config inspired by Spacemacs

  • I'm a big fan of hammerspoon, but not so much Lua. I also use emacs with Doom, where a lot of bindings are behind a 'leader key'. I found an awesome framework called 'spacehammer'[1] that fits very well into the way I like to work. It similarly hides binding behind a leader, and it's written in Fennel, a lisp that compiles to Lua. I feel like I get to expand the customizability of Emacs out to my whole system and I love it. Hammerspoon is pretty bare on its own so I suggest you check out spacehammer even if it's just a show case of the potential of hammerspoon.

    [1] https://github.com/agzam/spacehammer

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • LuaJIT

    Mirror of the LuaJIT git repository

  • Hammerspoon is fantastic. And Lua is a such a fun little language to program in. And with LuaJIT [0] you can run it on your nginx webserver [1] at basically the speed of C code. It's really a marvel of engineering.

    [0] https://luajit.org/

    [1] https://openresty.org/en/

  • espanso

    Cross-platform Text Expander written in Rust

  • I have been enjoying espanso[1], which at first glance is just a text-expanding keystoke saver, but can run shell scripts when it's doing its thing. So I can type :extip anywhere and it will curl ipinfo.io then pipe the json response through jq -r and leave my current external IP in whatever app I was typing in.

    1: https://espanso.org/

  • phoenix

    A lightweight macOS window and app manager scriptable with JavaScript (by kasper)

  • I've been using Phoenix (https://github.com/kasper/phoenix), which is hackable in JavaScript and has a smaller scope (only window management), but haven't found it compelling enough to keep hacking at my config, so I'm back to Moom (https://manytricks.com/moom/), which would be perfect if it supported chaining sequences of sizing instructions (i.e., tile a window twice to the left to turn it from 1/2 to 1/3 width).

  • Translate-for-Hammerspoon

    Google Cloud Translation API integration to Hammerspoon

  • Anycomplete

    The magic of Google Autocomplete while you're typing. Anywhere.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • setup

    My config, system settings, utilities, etc. (by kbd)

  • If anyone cares, here's my config: https://github.com/kbd/setup/blob/master/HOME/.hammerspoon/i...

    It shows off a tiny bit of what you can do with Hammerspoon:

    - window and app management

  • dot-hammerspoon

    My personal Hammerspoon configuration - mirrored from GitLab

  • I believe this is the implementation I based mine on: https://github.com/zzamboni/dot-hammerspoon/blob/master/init...

  • Spoons

    The official repository of Spoon plugins

  • Not OP, but I found this after a little bit of searching:

    https://gist.github.com/dshnkao/10865f32d69e40dc591e08e3af97...

    Shouldn't be that hard to spawn a terminal with this running from hammerspoon.

    Here's some Spoons that handle translation:

    https://github.com/Hammerspoon/Spoons/blob/master/Source/Dee...

  • hammerspoon

    A hammerspoon config with a bunch of custom spoons (sleep timer, resolution changer, paywall buster, safari hotkey utilities, window management with undo, etc). (by nonissue)

  • My pretty extensive (but poorly organized) config:

    https://github.com/nonissue/hammerspoon

    Features include:

  • dotfiles

  • delta

    A syntax-highlighting pager for git, diff, and grep output

  • Don't miss https://github.com/dandavison/delta. I use gui diff tools much less nowadays because I can get such great diffs in the terminal.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts