A lightweight Electron-based desktop application for accessing the Bloodhound Community Edition (BHCE) web interface, providing a native-like experience for users of Bloodhound CE running locally at http://localhost:9090. This application is designed to be cross-platform.
BloodHound-CE-Desktop wraps the Bloodhound CE web interface in an Electron application, allowing users to interact with BHCE in a standalone desktop window. It loads http://localhost:9090, where the BHCE web server is exposed, typically via a containerized setup (e.g., Podman or Docker).
- Bloodhound CE Instance: A running BHCE instance accessible at
http://localhost:9090. This can be set up using Podman, Docker, or a manual installation. - Node.js and npm: Required for building and running the Electron app.
- Recommended: Node.js 20 or later (e.g., 22.14.0).
- Electron: Version 36 is used for compatibility (specified in
package.json). - Git: For cloning the repository (optional if downloading manually).
- Clone the Repository:
git clone https://github.com/Red-Flake/BloodHound-CE-Desktop.git cd BloodHound-CE-Desktop
- Install Node.js and npm:
- Linux:
- Ubuntu/Debian:
sudo apt install nodejs npm - Fedora:
sudo dnf install nodejs npm
- Ubuntu/Debian:
- macOS: Use Homebrew (
brew install node) or download from nodejs.org. - Windows: Download and install from nodejs.org.
- Verify installation:
node --version npm --version
- Linux:
- Install Dependencies:
This installs Electron 36 and other dependencies listed in
npm install
package.json. Ignore warnings about deprecated packages (e.g.,boolean) for now.
- Start the Electron App:
This launches the Electron app, loading
npm start
http://localhost:9090.
For NixOS users, a shell.nix file is provided to set up a development environment with Node.js, npm, and Electron 36, along with required system libraries.
- Enter the Nix Shell:
cd BloodHound-CE-Desktop nix-shell
- Install Dependencies:
npm install
- Start the Electron App:
npm start
- Enter the Nix Shell:
cd BloodHound-CE-Desktop nix-shell
- Build the package using nix:
nix-build
By default, the application will connect to http://localhost:9090. However, you can override these settings using command-line arguments.
If you run the application without any arguments, it will use the default host and port:
bloodhound-ce-desktopThis will connect to http://localhost:9090.
To run the BloodHound-CE-Desktop application with a custom host, port, you can use the following command-line options to customize the host and port settings.
To specify a custom host and port, use the --host and --port flags. For example:
bloodhound-ce-desktop --host=example.com --port=8080This command will launch the application and connect to http://example.com:8080 instead of the default URL.
This flexibility allows you to easily switch between different environments or configurations without modifying the application code.
Contributions are welcome! Submit pull requests or open issues on the GitHub repository.
This project is licensed under the GNU General Public License (GPL) v3.0. See the LICENSE file for details.
