An 'alt+space' launcher for Windows, built with Electron
JavaScript C++ Objective-C Objective-C++ Python Batchfile Shell
Clone or download
dannya Implement sophisticated draggable window functionality (#270)
* * Mark up keyboard shortcut in README using <kbd>

* * Refactor preferences UI with a new "Window" page.

* Implement sophisticated draggable window functionality, with ability to specify whether or not to remember the dragged window position.

* New Window preferences UI also allows us to always open the window at a specified screen position (or to ignore this and always open in the center of the screen), or on a specified screen (for multi-screen environments).

* * Run eslint

* * Tweaks after testing on actual multi-monitor computer.

* * Force a keyboard focus after window move (needed for MacOS)
* Implement review feedback

* * Force a keyboard focus after window move (needed for MacOS)
* Implement review feedback

* * Run eslint

* * Window position saving was not working on MacOS, as there was an additional event fired on window hide, overwriting the expected window position. Introduce a lock variable that is reset after the hide has completed to avoid this issue.
Latest commit dcd3ba0 Jun 11, 2018

README.md

Hain

Build status Build Status Join the chat at https://gitter.im/appetizermonster/hain

An alt+space launcher for Windows, built with Electron.

I always dreamed of an alternative to Alfred on Windows, that is made with JavaScript. so, I made it.

Vision

It's a launcher with strict syntax (like terminal programs), it's not targeting to interpret natural language.
I believe the strict syntax can provide more powerful and fast response than to interpret natural language.

Features

  • Searching Executable files very fast with Fuzzy Matching
  • Plugins in Pure JavaScript

Downloads

Go to Releases, then you can download prebuilt binaries.

Usage

Run and press alt+space anywhere.

Themes

See THEMES.md

How to make Plugins

See Plugin Documentation

Install/Build from Source

# Clone this repo
git clone https://github.com/hainproject/hain.git
# Go into the repo
cd hain
# Install dependencies
npm install

Run from Source

npm run dev

Build for Windows

npm run build

Build for Linux

npm run build-debian

Build for macOS

gulp build-darwin

Contributing

See CONTRIBUTING.md

Credits

The name "Hain" is named by Hyunseop Lee, it means "a Servant" in Korean.
The app icon & gif are designed by Yunsung Lee.
It uses npmsearch.com for searching packages for now.

License

MIT