Skip to content
John Jones edited this page Nov 8, 2019 · 10 revisions

Requirements

To setup IIRMa on a local machine, you will need the following installed on your system:

Setup

Step 1

Open a Terminal window, and run the following:

# git clone --recurse-submodules git@github.com:casefoundation/IIRMa.git
# cd IIRMa
# make local_step_1

This checks out the map code, builds the basic components and starts up the Neo4j database.

Step 2

Now open http://localhost:7474/ and log into Neo4j with the default username and password neo4j/neo4j. The next screen will ask you to set a new password. Set any password here, but make sure to remember it for the next step.

Step 3

In the env folder in the IIRMa project, create a file named laravel.secret.env. In this file, you must specify private parameters that are specific to you:

APP_KEY=<Random 32 character length string>
CRUNCHBASE_KEY=<Optional>
IMPACTSPACE_KEY=<Optional>
MAIL_DRIVER=smtp
MAIL_ENCRYPTION=<tls or other>
MAIL_FROM=<Preferred sender address>
MAIL_HOST=<Mail server such as Amazon's SES>
MAIL_PASSWORD=<Mail server password>
MAIL_PORT=<Mail server port>
MAIL_USERNAME=<Mail server username>
DB_PASSWORD=<Any password, but it should match the MYSQL_PASSWORD password set later in mysql.secret.env>
NEO4J_PASSWORD=<The password just set during the Neo4j account setup>
DEFAULT_API_PASSWORD=<Any password, but should match the NETWORKMAP_API_PASS set later in wordpress.secret.ent>
DEFAULT_ADMIN_PASSWORD=<Any password>

Next, create another file in env named mysql.secret.env and specify the following:

MYSQL_ROOT_PASSWORD=<Any password>
MYSQL_PASSWORD=<Should match DB_PASSWORD set previously in laravel.secret.env>

Step 4

Now, run the following in a Terminal window in the IIRMa folder:

# make local_step_4

This starts up Redis, MySQL, and the Laravel back-end instance. With the back end of the application fully up and running, you must now run some commands to seed the Laravel database.

Step 5

To seed the Laravel database, run the following in a Terminal window in the IIRMa folder:

# docker exec -it iirma_networkmap-backend_1 bash

Docker will now load you into a BASH shell inside the running Docker container. In that environment, run the following:

# php artisan migrate
# php artisan migrate --seed

Step 6

Open a browser window with the URL: http://localhost:8080 and log in with the username admin@domain.com and the password set for DEFAULT_ADMIN_PASSWORD. This step verifies that the back-end is fully functional.

Step 7

To setup the front-end, create a file in the env folder named wordpress.secret.env with the following contents:

WORDPRESS_DATABASE_PASSWORD=<Should match MYSQL_PASSWORD set in mysql.secret.env>
NETWORKMAP_API_PASS=<Should match DEFAULT_API_PASSWORD set in laravel.secret.env>

Step 8

Now it is time to bring WordPress online. To do that, run the following in a Terminal window in the IIRMa folder:

# make local_step_8

Step 9

With the full stack fully functioning, it is now time to setup WordPress. To do that, open a browser window the the URL http://localhost and follow the standard WordPress setup steps. Once WordPress is installed, activate the Network Map theme.

Step 10

Lastly, to launch visualization, create a new page named "Explore". WordPress will automatically render the visualization on this page.

Testing the Install

Test Dataset

To test the install, go to the API admin interface http://localhost:8080/admin and use the CSV uploader to upload these test CSVs. After the CSV is loaded, go to http://localhost/explore to view the visualization.

API Datasets

ImpactSpace

If you have an ImpactSpace API key, you may fetch your first batch of data from their API, by executing the following:

# docker exec -it iirma_networkmap-backend_1 bash
# php artisan impactspace:analyze

Crunchbase

If you have a Crunchbase API key, you may fetch your first batch of data from their API, by executing the following:

# docker exec -it iirma_networkmap-backend_1 bash
# php artisan crunchbase:analyze

Table of Contents

  1. About
  2. How to Use IIRMa
  3. Technical Details
    1. Overview
    2. Getting Started
      1. Setup
      2. Deployment
    3. Back End
      1. Data Flow
      2. Database Schemas
      3. Creating New Data Sources
    4. Front End
      1. Data Flow
      2. Caching

The Origins of IIRMa

In 2017, The Case Foundation launched the Impact Investing Network Map, with data partners Impact Space and CrunchBase, to present the best publicly available data on impact investments to better inform the sector of the size, breadth and depth of the impact investing ecosystem. We believed that incorporating engaging data visualizations to display connections between investors and companies would not only bring greater accessibility and transparency to Impact Investing data but would demonstrate growth and inspire action in this catalytic movement.

We are appreciative of the resources and expertise provided by our advisors to build the initial product and their influence can be seen throughout IIRMa. We utilized elements of the CASE Smart Impact Capital, Impact Capital 101: Supply and Demand diagram to help illustrate the flow of capital between the supply and demand side actors. Check out the full video to learn more on capital flows within Impact Investing.

Clone this wiki locally