Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/dev2forge/bridgex/llms.txt

Use this file to discover all available pages before exploring further.

Bridgex is an open-source Rust desktop application, and contributions of all kinds are welcome — whether that’s a detailed bug report, a feature suggestion, a documentation fix, or a pull request improving the codebase. This guide explains exactly how to get involved, from opening your first issue to setting up a local Rust development environment and submitting a well-structured PR.

Reporting Bugs

If something doesn’t work as expected, the best way to help is to open a detailed issue on GitHub so maintainers can reproduce and address the problem.
1

Open a GitHub Issue

Navigate to the Bridgex Issues page and click New issue.
2

Describe the bug clearly

Include a short, descriptive title and explain what you expected to happen versus what actually occurred.
3

Provide reproduction steps

List the exact steps needed to reproduce the issue — the more specific, the better. Attach any relevant files or screenshots if applicable.
4

Include your environment details

State your operating system (Windows, macOS, or Linux), Bridgex version (e.g. v0.2.1), and Rust toolchain version if you are running from source.
Running cargo --version and rustc --version in your terminal gives you the exact toolchain version to include in a bug report when building from source.

Suggesting Features

Have an idea that would make Bridgex more useful? Feature requests are tracked on GitHub Issues alongside bug reports.
1

Search for existing requests

Before opening a new issue, check whether your idea has already been suggested. You can add a 👍 reaction to show support for existing requests.
2

Open a feature request issue

Create a new issue with a clear title and a description of the feature you have in mind.
3

Explain the benefit

Describe how the feature would benefit users of Bridgex and any relevant context — for example, file formats it would support or workflows it would improve.

Submitting Pull Requests

Code contributions are made through GitHub pull requests. All PRs are reviewed before merging, so please be open to feedback and willing to iterate.
1

Fork the repository

Click Fork on the Bridgex GitHub page to create your own copy of the repo.
2

Create a branch from main

Always branch off main and give your branch a descriptive name:
git checkout -b fix/markdown-output-encoding
3

Make your changes

Implement your fix or feature. Keep commits focused and atomic — one logical change per commit makes reviewing much easier.
4

Build and test your changes

Run the release build to confirm nothing is broken before submitting:
cd src/bridgex
cargo build --release
5

Write clear commit messages

Use concise, descriptive commit messages in the imperative mood (e.g. Fix encoding error for UTF-8 CSV files). Avoid vague messages like fix stuff or update.
6

Reference related issues

In your PR description, reference any related issues using GitHub keywords such as Closes #42 or Related to #17 so they are linked automatically.
7

Open the pull request

Push your branch and open a PR against the main branch of Dev2Forge/bridgex. Fill in the PR template if one is present.
All pull requests are subject to code review. Be open to constructive feedback — maintainers may request changes before a PR is merged.

Development Setup

Bridgex is a native Rust desktop application built with the Freya UI framework. You will need a working Rust toolchain to build and run it locally.

Prerequisites

  • Rust toolchain (stable channel recommended)
  • cargo (included with the Rust toolchain)
  • Git

Cloning and Running Locally

1

Clone the repository

git clone https://github.com/Dev2Forge/bridgex.git
2

Navigate to the Rust source directory

The Rust application lives inside src/bridgex:
cd bridgex/src/bridgex
3

Run in development mode

Use cargo run for a fast, unoptimised debug build — ideal when iterating on code:
cargo run
4

Run with Freya devtools (optional)

The dev feature flag enables the Freya UI devtools panel, which is useful when working on UI components:
cargo run --features dev
5

Create a release build

When you are ready to produce an optimised binary, use the release profile:
cargo build --release
The resulting binary is placed at target/release/bridgex.
6

Install locally (optional)

To install the binary into your Cargo bin directory so you can run it as bridgex from anywhere on your system:
cargo install --path .
Debug builds (cargo run) compile faster but are slower at runtime. Release builds (cargo build --release) take longer to compile but produce the optimised binary that end users run.

Coding Standards

Bridgex is written entirely in Rust. Please follow these conventions to keep the codebase consistent.
All Rust code must be formatted with rustfmt before submitting a PR. Run it with:
cargo fmt
The repository follows the standard Rust style as enforced by rustfmt with default settings. Unformatted code will be flagged during review.
Add /// doc comments to public functions, structs, and modules where the purpose is not immediately obvious from the name alone. Doc comments are particularly important for any types that form part of Bridgex’s internal API.
Keep commits small and focused. Each commit should represent one logical change. Squash work-in-progress commits before opening a PR so the history is clean and reviewable.
UI code uses the Freya framework. Follow the patterns already established in the codebase for component structure. When working on UI, running with --features dev enables the Freya devtools overlay for inspecting the element tree.

Code of Conduct

Bridgex follows the Contributor Covenant Code of Conduct. All participants — contributors, maintainers, and community members — are expected to uphold these standards in every interaction.

Positive behaviour

Demonstrating empathy and kindness, being respectful of differing viewpoints, giving and gracefully accepting constructive feedback, and focusing on what is best for the community.

Unacceptable behaviour

Trolling, insulting or derogatory comments, personal or political attacks, public or private harassment, and publishing others’ private information without permission.
Instances of abusive, harassing, or otherwise unacceptable behaviour may be reported to the community leaders at bridgex@dev2forge.software. All complaints will be reviewed and investigated promptly and fairly.
Violations of the Code of Conduct may result in a warning, temporary ban, or permanent ban from the community depending on severity, as described in the full Code of Conduct document.

License

By contributing to Bridgex, you agree that your contributions will be released under the project’s GNU General Public License v3.0 (GPL-3.0-only). This means all contributions become part of the GPL-3.0-licensed codebase and will remain free and open-source. See the License page for full details.

Build docs developers (and LLMs) love