Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/slint-ui/cargo-ui
GUI for Cargo
https://github.com/slint-ui/cargo-ui
Last synced: 4 days ago
JSON representation
GUI for Cargo
- Host: GitHub
- URL: https://github.com/slint-ui/cargo-ui
- Owner: slint-ui
- License: apache-2.0
- Created: 2021-07-14T18:48:44.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2024-06-18T13:16:34.000Z (5 months ago)
- Last Synced: 2024-10-07T12:23:53.553Z (27 days ago)
- Language: Rust
- Size: 429 KB
- Stars: 263
- Watchers: 7
- Forks: 22
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE-APACHE
Awesome Lists containing this project
- awesome-rust-list - slint-ui/cargo-ui - ui/cargo-ui?style=social"/> : This is a project to make a GUI for cargo, built using [Slint](https://github.com/slint-ui/slint). (GUI)
- awesome-rust-list - slint-ui/cargo-ui - ui/cargo-ui?style=social"/> : This is a project to make a GUI for cargo, built using [Slint](https://github.com/slint-ui/slint). (GUI)
README
# A GUI for Cargo
[![Build Status](https://github.com/slint-ui/cargo-ui/workflows/Rust/badge.svg)](https://github.com/slint-ui/cargo-ui/actions)
[![dependency status](https://deps.rs/repo/github/slint-ui/cargo-ui/status.svg)](https://deps.rs/repo/github/slint-ui/cargo-ui)This is a project to make a GUI for cargo, built using [Slint](https://github.com/slint-ui/slint):
## Screnshots
| ![Screenshot main](screenshots/main.png) | ![Screenshot Dependency tree](screenshots/deptree.png) | ![Screenshot install](screenshots/cargo_install.png) |
| ---- | ---- | ---- |## Installation
Cargo UI can be installed from crates.io:
```sh
cargo install cargo-ui
```Alternatively, you can download one of our pre-built binaries for Linux or Windows:
1. Open
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
```sh
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)
* The native style requires Qt >= 5.15, see .
If Qt is not present while building, the *fluent* style will be used as a fallback.## Vision
Some ideas for features:
- [x] Choose the binary to run or the lib to build or the test to run
- [x] Display the errors in a nice way
- [x] Select the debug or release mode
- [ ] Select the toolchain (nightly, stable, ...)
- [ ] Maybe integrate with rustup to update the toolchain or install new one
- [x] See the dependencies as an expendable tree
- [ ] Show duplicated dependencies
- [x] Show outdated dependencies, with button to easily update
- [x] 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](LICENSE-APACHE) and [LICENSE-MIT](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](LICENSE-GPL))