Willowdex
Farewell
Thank you everyone for your support over the past year. We initially created Willowdex because the existing Toronto maps didn’t cover where we lived and we really wanted to find Pokemon in our neighbourhood. We put in a lot of time and effort to make Willowdex and we’re happy to see thousands of users use it everyday. Unfortunately, we’re no longer able to dedicate the time required to maintain Willowdex.

In hopes of inspiring players to run their own maps in Toronto, we have written a small guide below.
Overview
Running a Pokemon Go map is easier than you think, but it requires some amount of technical expertise. Here is the high-level overview:
  1. Get domains, servers, accounts, hash keys, and proxies
  2. Configure map to scan for your area
  3. Configure stats site
  4. Configure Discord notifications
Domains
A domain is optional for running a map. If you are using your map privately and hosting it at home, you should be fine with using a dynamic DNS provide such as No-IP. Alternatively, you can use a free domain service like Dot TK.

If you plan on going public and growing like Willowdex, then we recommend you use an offshore domain registrar for an extra layer of protection. Read the Legality section at the bottom for more details.
Servers
A computer is required for running a map. It serves two purposes: scanning your area and hosting the UI for the map. If you are scanning a small area, you can get away with using your home computer. As you increase your map area and your user base grows, you will reach a limit which will force you to get a larger server. We recommend you look for servers on LowEndTalk and Web Hosting Talk.

If you plan on going public and growing like Willowdex, then we recommend you use an offshore server to host the UI for an extra layer of protection. Read the Legality section at the bottom for more details.
Accounts
Accounts are required for running a map. The map software essentially logs into multiple accounts and walks around gathering data (e.g. Pokemon and gyms). As most of you know, IVs are different for all accounts below level 30, so if you are looking to scan IV as well, you will need a set of level 30 accounts dedicated to scanning IVs.

There are two types of accounts that can log into Pokemon Go: Pokemon Trainer Club (PTC) and Google. Since Google accounts are hard to create automatically, most maps use PTC accounts.

You can create your own PTC accounts using Kinan or buy them off others (typically from Selly). You can find listings from various Discord channels or simply Googling for them. See below for a sample list of sellers: Keep in mind that Selly does not allow items to be less than 1 cent, so sellers typically have coupon codes in the description to reduce the price even further.

The main cost of creating accounts are captchas. The primary captcha solving service that the Pokemon Go mapping community uses is 2Captcha. They solve Pokemon Go captchas at $0.003 each.
Hash Keys
Hash keys are required for running a map. When the map software logs into Pokemon Go and pretends to walk around, it is essentially sending requests to Pokemon Go servers to perform certain actions. These requests contain a key (hashed output of request) which allows Pokemon Go to validate the authenticity of the request. Without the key, Pokemon Go will know that the request is fake.

The main hashing service is provided by Bossland. You can purchase it based on requests per minute (RPM). To give you an idea of how much you need, Willowdex required approximately 3000 RPM worth of hash keys.
Proxies
Proxies are optional for running a map, but they are highly recommended. When the map software logs into Pokemon Go, Pokemon Go knows that the request is coming from a specific IP. By using a proxy, it will mask your IP. Occasionally, Pokemon Go may ban your IP if they detect irregularities (from running a map). If you run your map from home without a proxy, it may prevent you from playing on your normal account from home.
Map Software
Map software is required for running a map. There are two main open source maps for Pokemon Go: RocketMap and Monocle.

RocketMap is what Willowdex was using, it is feature-rich map and a beautiful UI. Monocle is what some other maps use, it is missing some minor features and lacks a good UI, but it is much more efficient (uses less system resources) at scanning than RocketMap. It also scales better with large areas. Since Monocle lacks a good UI, some Monocle mappers have created a RocketMap-like UI called PMSF.

Each of these maps come with their own instruction manual which can be found on GitHub. If you are looking for more assistance, then we recommend you join their respective Discord channels to request for help.
Stats Site
Stats site is optional for running a map. Willowdex's stats site is based on Worldopole. It reads from the map database and provides useful information like trainer information and live nest locations. Worldopole only works with RocketMap.
Discord Notifications
Discord notifications are optional for running a map. It uses web hooks from the map software and posts it in Discord. The mainstream Discord notifier is PokeAlarm.
Legality
Using accounts to run a map is a grey area, but using Pokemon images on your map is definitely considered infringement. You will most likely receive a DMCA takedown notice or C&D when TPC (The Pokemon Company) notices your map. However, there are steps you can take to prevent such issues (Willowdex has done the same).

When TPC wants to report infringement, there are two main places where they can report: the domain registrar and web host. By registering with anonymous (typically offshore) domain registrars and web host, you can avoid running into these problems.