Skip to content

Latest commit

 

History

History
100 lines (64 loc) · 4.49 KB

README.md

File metadata and controls

100 lines (64 loc) · 4.49 KB

Build Status Github Tag

RescueBox Desktop

RescueBox Desktop (RBox) is a self-contained binary offering a UI interface to a library of ML models for various forensic applications. To use RescueBox Desktop, start up a model application in the background adhering to the FlaskML interface.

Then, register the model application's IP Host address and port. You can now run the model by specifying its inputs on the UI and analyzing outputs when ready. RBox handles the rest: running the jobs, and interfacing with different ML models. Since RBox is aimed toward forensic analysts, it is designed to operate on local, or drive-mounted storage.

For a review of the project's goals, read What is RescueBox Desktop?. For a view into how RBox-Desktop works, read the architecture section.

Getting Started

Step 1: Download the Latest Release for Windows 10 or 11 Only deployment.

Get the latest release of the binary for your operating system (Windows) from the release page. For Linux, see Additional Instructions for Linux.

Step 2: Deploy the RescueBox Download

Double click the RescueBox-Desktop Setup 1.0.exe. The first input is the install directory. choose any path that exists and has at least 5 GB of free space. The time taken to unzip the files and put them in the install directory is a few minutes. Continue to run the Desktop when prompted. This proces now setups a Python local to RescueBox and starts up the Model Severs . This takes several minutes. It also downloads python modules from internet connection. After Model servers are started the progress bar of the install reaches completion and now the Application is ready to use.

Run the model application, which should provide you with a URL to register with RBox.

Step 3: Using the App

Launch the binary you downloaded in step 1, and register the model application.

You should now be able to see the model application in the app, and be able to run inference tasks on it!

Logs:

the UI shows the logs in reverse order ie: more recent messages first. Files are located here : C:\Users<USERNAME>\AppData\Roaming\RescueBox-Desktop\logs

Troubleshooting:

  1. First look at the eror in the task execution result or the log in the UI.
  2. Typical errors are due to : image /video /audio files not readable , perhaps due to unsupported format.
  3. Other errors are due to not able to read from the input path or write to output path.
  4. rb_py.log tracks pip and pienv cmdlines , about dependencies for model code.
  5. main.log is the overall rescuebox UI and Model server logs
  6. other logs are from python installer.

Development

RescueBox Desktop is built using Electron, React, TypeScript, TailwindCSS, and SQlite (with Sequelize).

RescueBox implments the "Flask-ML" protocol, which is a simple interface for running ML models. See Flask-ML Protocol.

Developer Prerequisites

  • Node v18 (newer versions may work)

Developer Install

Clone the repo and install dependencies:

git clone https://github.com/UMass-Rescue/RescueBox-Desktop.git
cd RescueBox-Desktop
npm install

Having issues installing? See this debugging guide

Starting Development

Start the app in the dev environment:

npm start

Packaging for Production

To package apps for the local platform:

npm run package

Docs

See electron-react's docs and guides here