A cross-platform open source Path of Exile item sniper with a user friendly interface
JavaScript HTML CSS
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
font New settings pannel Jul 9, 2017
materialize Initial upload May 31, 2017
media Adding media folder Aug 26, 2017
spectrum Filter groups and new affixes Nov 1, 2017
templates Filter icons Nov 29, 2017
LICENSE.md Rename LICENSE to LICENSE.md Dec 14, 2017
README.md Update README.md Apr 7, 2018
affix-completion.json Elder mods completion Jan 5, 2018
affix-parse.js Removed unique mods from affix-parse for now Oct 12, 2017
affix-parse2.js Affixes update Dec 5, 2017
affixes.json Affixes update Dec 5, 2017
alt-art.json Item alt art names ref Oct 6, 2017
autocomplete.json Adding missing Oni-Gorochi and new uniques Jan 5, 2018
blacklist.js Category improvement and blacklisting Nov 2, 2017
blacklisted-entry.js Category improvement and blacklisting Nov 2, 2017
chunk.js Web sockets are now used Dec 4, 2017
config.json Added support for Mayhem race Jun 25, 2017
currency.js Misc fixes Aug 28, 2017
filter-group.js Filter groups and new affixes Nov 1, 2017
filter-groups.js Filter groups and new affixes Nov 1, 2017
filter-groups.json Category improvement and blacklisting Nov 2, 2017
filter.js Undef socket and type Jan 4, 2018
filters.js Category improvement and blacklisting Nov 2, 2017
filters.json Category improvement and blacklisting Nov 2, 2017
index.html Version Jan 5, 2018
item-blacklist.json blacklist creation fix Nov 3, 2017
item.js 3.1 content update Dec 12, 2017
itemTypes.json Adding missing Oni-Gorochi and new uniques Jan 5, 2018
main.js Hiding dev tool Dec 6, 2017
misc.js poe.trade import fix Nov 23, 2017
out.json Parse mods from the wiki Oct 12, 2017
package.json Version Jan 5, 2018
player-blacklist.json blacklist creation fix Nov 3, 2017
renderer.js Switched saveConfig to writeFileSync to prevent corruption Jan 5, 2018
reverseItemType.json Better affixes handling Sep 10, 2017
sniper.png Misc interface fix Nov 18, 2017
sound1.mp3 Initial upload May 31, 2017
sound2.mp3 Initial upload May 31, 2017
style.css Affixes update Dec 5, 2017
type-completion.json Changed "item type" UI to input text field with completion Aug 28, 2017



IMPORTANT! poe-rates.com has been added to the whitelisted domains, I therefore have to stop serving whole API chunks through websockets since this goes against the whitelisting idea. Since this is the current way Poe-sniper is working, this also means that I have to retire poe-sniper, at least temporarly, until I use the same serving method used on poe-rates :: live. In the mean time, please use https://poe-rates.com/live/ instead.

NEW! Use the online version of the tool at https://poe-rates.com/live/

alt text


This tool lets you run live searches by parsing the latest item data from the Path of Exile API. The main benefit of this tool compared to poe.trade live search is the ability to centralize and save searches within a single window.

Note for Linux users: Make sure to install the xclip clipboard manager to be able to copy whisper messages to the clipboard.


Here is a short 5 min video showcasing some of the features of the tool :)


Here is the set of features currently supported:

  • Find underpriced items for each leagues
  • Create item filters based on various criteria:
    • type
    • Armor/Shield/Evasion values
    • Affixes
    • Number of links
    • Sockets (total and R/G/B/W)
    • Item level
    • Item tier
    • Gem XP%
    • Quality
    • Corrupted/crafted/enchanted/identified
    • Rarity (including non-unique)
    • DPS (Total, Phys)
    • League
    • Price
  • Import your poe.trade searches
  • Show price stats of similar items appearing on poe.trade
  • Search on poe.trade using your filter criteria
  • Links to poe.trade, poe-rates.com search as well as the official wiki
  • Notification support (both visual and sound)
  • Contact sellers by clicking on an item entry or toggle automatic copy to the clipboard.
  • Item price recommendation based on poe.trade
  • Blacklist support (see video)
  • Filter categories (see video)
  • Mod group support (NOT, IF, SUM, COUNT, WEIGHT, AND)


The app is written in Node.js and packaged as a native application using the Electron framework.

How it works

The tool starts by fetching the last change_id using the http://poe-rates.com API. Chunks are then downloaded from the Path of Exile API with gzip compression into memory. Each item in the chunk is compared to the filters created by the user and, should it match the criteria, displayed in the tool.

How fast is it?

It depends on your connection speed.

Is it faster than poe.trade?

It is slightly faster for me, but that may not be the case for everyone.

Running the tool

There are two ways to run the tool, either from the sources directly or by fetching one of the releases.

From source

Within a terminal:

  • Clone the code using git clone https://github.com/licoffe/POE-sniper.git
  • Change to the cloned location and run npm install to install all dependencies
  • Finally, run npm start to start the indexer


Make sure to have an unlimited connection plan and a good bandwidth since the tool downloads currently around 1.5 MB of JSON data every second.


Error on startup

alt text

If you run into this error on startup, it means that the config.json file holding your settings has been corrupted. The solution is to erase the config file, which will be rebuilt by the program on the next startup. Here are the different paths depending on your system:

  • On Windows: C:\Users\YourUser\AppData\Roaming\POE-Sniper
  • On MacOS: ~/Library/Application Support/POE-Sniper
  • On Linux: ~/.config/POE-Sniper

Stuck on a change_id / No new items in a while

The connection to the API is set to timeout after a minute. If it happens for some reason (loss of internet connection, realm restart, computer went to sleep, etc.), the program will fetch again the last known change_id from either poe.ninja/poe-rates.com and attempt to download it.

If you did not receive item updates in a while, then this is most likely an error due to your current filter setup. Feel free to contact me on Reddit or Discord if it happens.

Program freeze

Make sure not to use filters which are too broad (ie. (any Gem) or (any Map)). A filter matching too many items is not useful, will greatly increase parsing time, consume additional memory and slow down the entire program.


You can contact me on reddit or Discord, same account.