From 62f044950e40f42486435293205799852db26fa5 Mon Sep 17 00:00:00 2001 From: "Guilherme C. Matuella" Date: Tue, 12 May 2020 15:59:38 -0300 Subject: [PATCH 1/2] Adds npm `postinstall` script to install subdependencies concurrently --- README.md | 13 +++---------- package.json | 2 ++ 2 files changed, 5 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index 4bbcc34..e8ac3bd 100644 --- a/README.md +++ b/README.md @@ -40,19 +40,12 @@ If you run `Robin` and your browser show scary messages about the traffic, you n ### Setting up the Environment ```bash -# Clone the repository +# We'll clone the repository and cd into it git clone https://github.com/olmps/Robin cd Robin -# Install the root dependencies +# Then install both root and submodules' dependencies through NPM npm i -# Install the Main dependencies -cd main -npm i -# Install the Renderer dependencies -cd renderer -npm i - -# Start the app +# At last, we start the application npm run start ``` diff --git a/package.json b/package.json index 7c1350c..4c13d8c 100644 --- a/package.json +++ b/package.json @@ -4,6 +4,8 @@ "description": "A Web Security Tool", "main": "index.js", "scripts": { + "postinstall": "npm run install-modules", + "install-modules": "concurrently --kill-others-on-fail \"cd main && npm i\" \"cd renderer && npm i\"", "copy-shared": "copyfiles --flat shared/*.ts main/src/shared/ && copyfiles --flat shared/*.ts renderer/src/shared/", "start-react": "cd renderer && npm run start", "start-electron": "cd main && npm run start", From 428085d4ebfd2bee9df318ab1e2f809931d17629 Mon Sep 17 00:00:00 2001 From: "Guilherme C. Matuella" Date: Tue, 12 May 2020 16:00:01 -0300 Subject: [PATCH 2/2] Improves README readability and segmentation --- README.md | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index e8ac3bd..8d22c5f 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@ Robin is a Web Security debugging tool built using `Electron` and `React JS`. We ## Installing --- -Choose the OS and download the latest release +Choose your OS and download the latest release [![All platforms download](https://img.shields.io/badge/download-any_platform-green.svg)](https://github.com/olmps/Robin/releases/latest) @@ -18,14 +18,14 @@ The codebase is divided in two main modules: `main` and `renderer`. The `main` module represents the `Electron` app. It wraps the React application and is responsible for making OS-level tasks. -## Renderer +### Renderer The `renderer` module represents the `React` app. It includes all the application interface and is responsible for presentation and user-interaction tasks. -## Enabled HTTPS +## Enabling HTTPS --- -If you run `Robin` and your browser show scary messages about the traffic, you need to trust Robins certificate to intercept and inspect HTTPS traffic. Robin uses a wildcard certificate and performs a Man In the Middle between the request origin and its destination. In order to perform these MITM, you need to trust Robin's wildcard certificate. Follow these steps to enable HTTPS traffic intercept: +If you run `Robin` and your browser show scary messages about the traffic security, you need to trust Robin's certificate to intercept and inspect HTTPS traffic. Robin uses a wildcard certificate and performs a Man In the Middle (*MITM*) between the request origin and its destination. So, in order to perform these *MITM*, you need to trust Robin's wildcard certificate. Follow these steps to enable HTTPS traffic intercept: ### MacOS 1. Install the certificate by double-tapping the certificate and its key at `main/src/resources/certificates/` @@ -38,6 +38,8 @@ If you run `Robin` and your browser show scary messages about the traffic, you n ## Contributing --- +Any contribution is accepted, but we follow some [guidelines](./CONTRIBUTING.MD) to keep things running as best as we can! + ### Setting up the Environment ```bash # We'll clone the repository and cd into it @@ -49,13 +51,15 @@ npm i npm run start ``` -By default, the application automatically turn on the proxy settings on `macOS` environment. But you can manually enable/disable this settings on `System Preferences -> Network -> Advanced -> Proxies`. - +### Proxy +By default, the application turns on the proxy settings on `macOS` environment automatically. To manually enable/disable this settings, go to `System Preferences -> Network -> Advanced -> Proxies`. To turn the proxy on, the server specs must follow: - - Web Proxy (HTTP): 127.0.0.1 : 8080 - Secure Web Proxy (HTTPS): 127.0.0.1 : 8080 -### If after closing the application / debug session you appear to be without network connection, it may be the case that the application failed to disable the proxy settings on the machine. Follow the steps above to manually turn it off. +## Troubleshooting +--- + +Q: *After closing the application/debug session, it looks that I have lost network connection, why?* -### Read the [Contributing Guidelines](./CONTRIBUTING.MD) \ No newline at end of file +A: There are cases where the application fails to disable the proxy settings. To solve this, you should follow the steps in the **Proxy** section above. \ No newline at end of file