Coder Social home page Coder Social logo

gitlab-triage's Introduction

This tool is aimed at power-users who want a more intuitive and focused user interface for gitlab issues. The goal is that it should be ergonomic to process and read issues without using the web interface.

More features and modes will be developed as I use them or perhaps not at all.

Features

  • Compact terminal interface to GitLab
  • Quickly assign labels, comment and other metainformation to issues.
  • Advanced ticket querying along multiple axes

Screenshots

Key bindings

Ticket List

Key Definition
C-q Quit
g Goto Ticket
r Refresh
s Search by open/closed
c Search by ticket scope
l Search by label
m Search by milestone
a Search by author
o Search by owner
w Search by weight
/ Search by keyword
C-o Toggle Asc/Desc
C-s Toggle CreatedAt/UpdatedAt

Ticket Page

Key Definition
ESC Return to Ticket List
g Goto Ticket
F10 Commit ticket changes
s Toggle Open/Close Status
t Modify title
l Modify labels
m Modify milestone
o Modify owner
w Modify weight
c Add a new comment
d Modify description
v View currently selected comment
n Move to next issue
p Move to previous issue

Building

The only tested configuration is with cabal new-build with GHC-8.6.4 and cabal-install-2.4.0.0.

cabal new-run

gitlab-triage's People

Contributors

mpickering avatar

Stargazers

Tristan de Cacqueray avatar Matthieu Coudron avatar Martin Allard avatar  avatar chessai avatar Csongor Kiss avatar Tao He avatar Jonathan Daugherty avatar  avatar Moritz Angermann avatar

Watchers

Moritz Angermann avatar James Cloos avatar  avatar  avatar  avatar

gitlab-triage's Issues

Make multi-select dialog a bit better

The label dialog is a bit annoying to use as you can't easily remove a label which isn't at the end.

There has to be a notion of "selection" so that frozen labels can be selected and then removed rather than just the last one by pressing backspace.

Rendering of issue page comments could be better

The comments in the issue page are rendered using the default brick list widget. This works well enough for getting started but you really need a variable height list widget to render them properly. However, this is non-trivial to implement efficiently (see jtdaugherty/brick#226)

The colour scheme could also be improved, the blue on white is not that aesthetic.

GOTO issue leads to inconsistent state

GOTO still inherits the parent ticket list you jumped from, this isn't ideal as if you update the issue
then it overwrites the current focus in the ticket list so when you return to it via ESC then the view of the query is wrong.

There needs to be a way to view a ticket without being in an ambient Ticket List context.

Don't load all users at initialisation

This takes a really long time when doing it on gitlab.com. The autocomplete box needs to make API calls to do the search rather than rely on doing it locally.

Paginate Issues

Currently only the first 100 issues are fetched. It would be nice if the list of issues could be lazily loaded so that when the list widget requested more to be viewed the next page was automatically loaded. In order to achieve this I think it would be easiest to modify the implementation of the List widget from Brick.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.