Skip to content

Building from Source

Jonas Resch edited this page Nov 27, 2025 · 1 revision

Building from Source

Compile QuantHide yourself from source code.


Prerequisites

All Platforms

Platform-Specific

Windows

  • Visual Studio Build Tools with C++ workload
  • WebView2: Usually pre-installed on Windows 10/11

macOS

  • Xcode Command Line Tools: xcode-select --install

Linux (Debian/Ubuntu)

sudo apt update
sudo apt install -y \
  build-essential \
  libwebkit2gtk-4.1-dev \
  libappindicator3-dev \
  librsvg2-dev \
  patchelf

Linux (Fedora)

sudo dnf install -y \
  webkit2gtk4.1-devel \
  libappindicator-gtk3-devel \
  librsvg2-devel

Build Steps

1. Clone the Repository

git clone https://github.com/reschjonas/QuantHide.git
cd QuantHide

2. Install Dependencies

npm install

3. Development Mode

Run with hot-reload for development:

npm run tauri dev

4. Production Build

Build optimized release binaries:

npm run tauri build

Build Outputs

After npm run tauri build, find your binaries:

Platform Location
Windows src-tauri/target/release/bundle/msi/
macOS src-tauri/target/release/bundle/dmg/
Linux (.deb) src-tauri/target/release/bundle/deb/
Linux (.rpm) src-tauri/target/release/bundle/rpm/
Linux (.AppImage) src-tauri/target/release/bundle/appimage/

Troubleshooting

"tauri: command not found"

npm install
# or
cargo install tauri-cli

Linux: Missing webkit2gtk

# Ubuntu/Debian
sudo apt install libwebkit2gtk-4.1-dev

# Fedora
sudo dnf install webkit2gtk4.1-devel

macOS: Code signing errors

For local builds, you can skip signing:

npm run tauri build -- --no-bundle

Windows: MSVC not found

Install Visual Studio Build Tools with "Desktop development with C++".

Build takes too long

First build compiles all Rust dependencies (~5-10 minutes). Subsequent builds are much faster due to caching.


Project Structure

QuantHide/
├── src/                    # Frontend (HTML/CSS/JS)
│   ├── index.html
│   ├── styles.css
│   └── js/
│       ├── main.js
│       ├── features/       # encode, decode, etc.
│       └── ui/             # modals, toast, etc.
│
├── src-tauri/              # Backend (Rust)
│   ├── src/
│   │   ├── lib.rs          # Tauri commands
│   │   ├── crypto.rs       # Encryption
│   │   └── stego.rs        # Steganography
│   ├── Cargo.toml
│   └── tauri.conf.json
│
└── package.json

Development Tips

Watch logs

RUST_LOG=debug npm run tauri dev

Clean rebuild

cd src-tauri
cargo clean
cd ..
npm run tauri build

Update dependencies

npm update
cd src-tauri
cargo update

Clone this wiki locally