Skip to content

GRA0007/strand

Repository files navigation

Strand

GitHub Release checks Tauri v2

A strand-like git GUI

Strand intends to be a simple but powerful graphical user interface for Git.

Principles

  • Strand is designed to use only native git cli commands to interface with your repositories. This has the benefit of being able to support every git feature, as well as show a log of commands it has run.
  • As a git GUI, Strand attempts to simplify complex git functionality, with the aid of the visuals. This includes functionality like auto-fetch, undo/redo, and the git graph.
  • During early development, Strand is very opinionated, and minimal customisation will be available. This may change in the future.

Download

Warning

Strand is currently in alpha, so many features will be missing/broken and there is no documentation. Feel free to try it out at your own risk.

You can download the latest release for your device from the GitHub releases.

Contributing

Strand is still in the early stages of design and development, so any contributions are likely to be rejected. If you'd like to get it running locally however, follow the steps below.

Local Development

  1. You'll need Rust and Node.js (fnm or similar recommended) installed to begin. Make sure you install the version of Node specified in the .nvmrc file.
  2. Install pnpm.
  3. Clone the repository locally with git.
  4. Run pnpm i in the root of the repository to install the JavaScript dependencies.
  5. Run pnpm tauri dev to start the dev server.

The UI is built with React, and the code can be found in the src folder.

The src-tauri folder contains the Rust code. If you want to take advantage of the sqlx checked queries, you'll need to create a .env file in this folder with the DATABASE_URL set to the location of the Sqlite file, e.g. sqlite:/Users/you/Library/Application Support/dev.bengrant.strand/data.db.

About

A strand-like git GUI

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

  •  

Contributors