Alpha

Contributing

Help us make Deskctl Bridge better.

First off, thank you for considering contributing to Deskctl Bridge!

Philosophy

Before you dive in, please keep in mind the project's core philosophy:

  • Simple: We want to keep the feature set focused.
  • Lightweight: Avoid adding heavy dependencies unless absolutely necessary.
  • Cross-Platform Native: We prioritize a clean, native experience on both Windows and macOS.

Getting Started

To work on Deskctl Bridge locally, you'll need:

  • Rust (latest stable) - Install from rustup.rs
  • Node.js 18+ - For frontend and documentation
  • pnpm - Build tool and package manager
  • Turbo - Build system (optional but recommended)
  • Platform-specific tools:
    • Windows: Visual Studio Build Tools
    • macOS: Xcode Command Line Tools

Local Development

  1. Clone the repository:

    git clone https://github.com/codewithevilxd/deskctl.git
    cd Deskctl
  2. Install dependencies:

    pnpm install
  3. Run in development mode:

    You can run all apps simultaneously:

    pnpm dev

    Or run a specific app:

    pnpm dev:bridge # for the desktop app
    pnpm dev:web    # for the web dashboard
  4. Build for production:

    pnpm build

    Or build a specific app:

    pnpm build:bridge

    This will create platform-specific installers in apps/bridge/src-tauri/target/release/bundle/

Project Structure

This is a monorepo managed by Turbo and pnpm.

  • apps/: Contains the main applications (bridge, docs, web, hub, rhub).
  • packages/: Shared libraries and UI components.
  • tooling/: Build and configuration tools.

Documentation

The documentation is built with Fuma Docs. To run it locally:

pnpm dev:docs

Pull Requests

  • Small is better: We prefer small, focused pull requests.
  • Explain the "Why": Include a clear description of the problem your PR solves.
  • Consistency: Try to follow the existing code style.

Thank you for being part of the community! 🚀

On this page