6 releases

0.3.3 May 4, 2023
0.3.2 May 10, 2022
0.3.1 Feb 10, 2022
0.3.0 Oct 22, 2021
0.1.0 Jul 20, 2021

#120 in Cargo plugins

Download history 18/week @ 2023-08-17 10/week @ 2023-08-24 16/week @ 2023-08-31 17/week @ 2023-09-07 16/week @ 2023-09-14 13/week @ 2023-09-21 7/week @ 2023-09-28 9/week @ 2023-10-05 14/week @ 2023-10-12 14/week @ 2023-10-19 15/week @ 2023-10-26 7/week @ 2023-11-02 20/week @ 2023-11-09 4/week @ 2023-11-16 24/week @ 2023-11-23 25/week @ 2023-11-30

73 downloads per month

GPL-3.0-only

275KB
1.5K SLoC

A GUI for Cargo

Build Status dependency status

This is a project to make a GUI for cargo, built using Slint:

Screnshots

Screenshot main Screenshot Dependency tree Screenshot install

Installation

Cargo UI can be installed from crates.io:

cargo install cargo-ui

Alternatively, you can download one of our pre-built binaries for Linux or Windows:

  1. Open https://github.com/slint-ui/cargo-ui/releases
  2. Click on the latest release
  3. From "Assets" download either cargo-ui-linux.tar.gz for a Linux x86-64 binary or cargo-ui-windows.zip for a Windows x86-64 binary.
  4. Uncompress the downloaded archive and run cargo-ui/cargo-ui.exe or place the uncompressed directory into your PATH.

Usage

cargo ui

Prerequisites

In addition to a working cargo and Rust installation, a few other tools or libraries are needed:

Linux:

  • fontconfig library (libfontconfig-dev on debian based distributions)
  • xcb library (libxcb-shape0-dev libxcb-xfixes0-dev libxkbcommon-dev on debian based distributions)

Windows:

  • A working C compiler (such as MSVC)

macOS:

  • "Xcode Command Line Tools" need to be installed: xcode-select --install

For the native style: (optional)

Vision

Some ideas for features:

  • Choose the binary to run or the lib to build or the test to run
  • Display the errors in a nice way
  • Select the debug or release mode
  • Select the toolchain (nightly, stable, ...)
  • Maybe integrate with rustup to update the toolchain or install new one
  • See the dependencies as an expendable tree
  • Show duplicated dependencies
  • Show outdated dependencies, with button to easily update
  • Ability to easily add dependency (by searching the crates.io index)
  • Edit features of dependencies from a list.
  • Show asm, llvm-ir, ...
  • Show build progress and be able to cancel the build
  • Edit other metadata of the the Cargo.toml (edition, author, ...)
  • Manage workspaces and do batch edit of the metadata on all members
  • Have a "playground" tab which allow to easily try rust code
  • A publish tab which publishes all the crates in the workspace in the right order
  • Double-click on a Cargo.toml file would also run cargo-ui.
  • ...

License

The source code of Cargo UI is available under the terms of both the MIT license and the Apache License (Version 2.0). (See LICENSE-APACHE and LICENSE-MIT for details.)

However, because of the use of GPL dependencies, cargo-ui, as a whole, is licensed under the terms of the GPLv3 (See LICENSE-GPL)

Dependencies

~27–74MB
~1.5M SLoC