IP Verification Application utilizing the React JavaScript library with Continuous Integration
Switch branches/tags
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
public
scss
src
.gitattributes
.gitignore
.travis.yml
LICENSE.md
README.md
application-screenshot.jpg
package-lock.json
package.json

README.md

IP Verification Application

This application utilizes Apility.io's free blacklist API to demonstrate how a system could verify a user by their IP address. By determining if the IP address is blacklisted, and gathering their Geolocation data and Autonomous System information, the system could decide to block the user's access if necessary. This allows the system to perform a "virtual background check" on new users, which helps maintain the system's integrity.

screenshot

Project Goals

Technologies:

Getting started

  • clone or download this repository
  • navigate to the root directory of the application
  • open terminal in this directory
  • run npm install in the terminal

Before using

  • retrieve a Google Maps API Key by following the instructions here
  • retrieve a Apility.io API Key by registering here
  • create a file named .env at the root directory of the application
  • add REACT_APP_GOOGLE_KEY = <YOUR GOOGLE MAPS API KEY> to the .env file
  • add REACT_APP_APILITY_KEY = <YOUR APILITY API KEY> to the .env file
  • run npm run build in the terminal

Start & use the application

  • run npm start in the terminal
  • index.html will be opened in your local browser
  • enter a valid IPv4 IP address in the search input field at the top of the page (eg. 1.2.3.4)
  • click the Search button or press enter to retrieve the relevant IP, Geolocation, and Autonomous System information for the searched IP address from Apility.io's API

Test the application

  • run npm test in the terminal

Build the application

  • run npm run build in the terminal

Why I built this project

I decided to build this application to help introduce myself to the React JavaScript library and the cybersecurity industry. React is a popular front-end library used today because of its exceptional modularity. Additionally, cybersecurity is one of the hottest industries out there and has been especially popular with everything going on in the world lately, like data breaches for instance.

Having not had the opportunity to gain any experience in cybersecurity at previous employers, I decided to utilize a security intelligence data feed for this application. With there being so many data feeds available to choose from, I wanted to select one that I would not only be able to understand, but could utilize practically in my application.

I found Apility.io's blacklist API and already had some prior understanding of what being "blacklisted" meant, thus decided I could utilize the API to demonstrate how an enterprise level solution could verify a new user's integrity with their IP address by checking if it is found in a (or many) blacklist database(s), as well as retrieving Geolocation data and Autonomous System information.

Author

License

This project is licensed with the MIT License - see the LICENSE.md file for details

Acknowledgements

For additional functionalty included with Facebook's "create-react-app" template, look here