diff --git a/README.md b/README.md index 1b297b4..ef8e675 100644 --- a/README.md +++ b/README.md @@ -3,12 +3,10 @@ -`ProcessTree` is a module for navigating the Elixir process ancestry hierachy. +`ProcessTree` is a module for avoiding global state in Elixir applications. ## Motivation -`ProcessTree` was originally developed as a tool for avoiding global state & global references in Elixir applications. - It's common in Elixir apps to rely on global references or global variables for locating application services or configuration parameters. This presents problems when we test our code. We need to work around our global data, for example by setting/resetting environment variables and using `async: false`. `ProcessTree` solves the problem by localizing data to a particular branch of the Elixir process tree. When testing with ExUnit, each ExUnit test process, and all processes spawned by the test process, can use `get/1` or `get/2` to see their own private copy of the data of interest.