Go to file
Marcel van Remmerden 6d5ba447dc Merge branch '91-favourite-projects-disappearing-after-log-out-log-in' into 'main'
Persist favorites, bookmarks and settings after logging out

Closes #91

See merge request mvanremmerden/gitdock!96
2022-03-27 05:57:58 +00:00
.circleci Set up GitHub Actions workflow 2021-07-24 19:35:22 +02:00
.github Update node and npm for lockfile version support 2021-08-01 07:24:05 +02:00
assets Allow configuring notifications in libnotify settings 2022-02-17 12:01:05 +00:00
docs Write Basic Windows Instructions 2021-10-24 20:16:58 +00:00
lib Fix latest eslint 2022-02-17 23:48:12 +00:00
src Add link to new issue and open issues in Command Palette 2022-03-27 00:49:41 +00:00
test Prevent a favorite project to be added twice 2022-03-27 05:31:20 +00:00
.eslintrc.json Avoid electron package eslint errors 2022-02-13 21:06:20 +00:00
.gitignore Update to Electron 16 2021-12-14 19:13:59 +00:00
.gitlab-ci.yml Fix latest eslint 2022-02-17 23:48:12 +00:00
.mocharc.js Require an access token in tests 2022-02-07 15:12:45 +00:00
.prettierignore Added prettier to fix code style 2021-10-14 21:50:09 +00:00
.prettierrc Added prettier to fix code style 2021-10-14 21:50:09 +00:00
CONTRIBUTING.md Add simple contributing guide 2021-11-26 16:48:10 +00:00
LICENSE Clarify that GitDock is under MIT License 2021-08-05 09:20:19 +02:00
README.md Allow configuring notifications in libnotify settings 2022-02-17 12:01:05 +00:00
config.json Add test summary to merge requests 2021-10-24 19:52:02 +00:00
index.html Use Playwright 2021-12-08 19:47:59 +00:00
login.html Complete restyling of file selector 2022-02-15 17:44:15 +01:00
myApp.js Merge branch '91-favourite-projects-disappearing-after-log-out-log-in' into 'main' 2022-03-27 05:57:58 +00:00
package-lock.json Persist favorites, bookmarks and settings after logging out 2022-03-27 05:57:58 +00:00
package.json Persist favorites, bookmarks and settings after logging out 2022-03-27 05:57:58 +00:00
preload.js Add reset button and functionality 2022-02-14 05:21:48 +01:00
renderer.js Add reset button and functionality 2022-02-14 05:21:48 +01:00
style.css Complete restyling of file selector 2022-02-15 17:44:15 +01:00
variables.css Update to Electron 16 2021-12-14 19:13:59 +00:00

README.md

GitDock

GitDock is a MacOS/Windows/Linux app that displays all your GitLab activities in one place. Instead of the GitLab typical project- or group-centric approach, it collects all your information from a user-centric perspective.

You can either have a look at this walkthrough video I recorded, or just try it out yourself by downloading it from the releases.

YouTube Video

Installation

As GitDock hasn't been digitally signed and verified (yet), the installation requires a few more steps than usual.

MacOS

Installation options

Currently GitDock can be installed in 2 ways. Both currently require a workaround (explained right below the two options) in order for them to work:

Option 1: Homebrew

  1. brew install gitdock

Option 2: Manual

  1. Grab the dmg file from the newest release on the Releases page.
  2. Move the app to your Applications folder and open it. You will see a notification informing you that this app hasn't been vetted and download from the App Store. Click "Cancel" at this point.

Installation warning workaround

Installation warning

  1. Open "Settings -> Security & Privacy" in your MacOS System Preferences, and make sure you are on the "General" tab.
  2. You should now see a message about GitDock in the lower part. After clicking "Open anyway", it should work as expected 🎉

Security & Privacy warning

Windows
  1. Grab the GitDock.exe file from the newest release on the Releases page.

  2. After the download has finished, Downloads will show a warning ⚠️ symbol, and will show a message "Make sure you trust GitDock.exe".

  3. Click the "..." next to the download item, and then choose "Keep".

Keep Download

  1. Click "Show more", and then choose "Keep anyway".

Keep Download

  1. You will now have a "GitDock.exe" in your Downloads folder.
  2. Click the "GitDock.exe" to open it. You will see a Windows Defender popup: "Windows protected your PC"

Run GitDock

  1. Click More Info, then Run anyway.

Run GitDock

How to use GitDock

Authentication

Depending on whether you use GitLab.com or a self-managed instance, you can either log in directly with your username and password, or create a personal access token.

GitLab.com

Just click the "Login with GitLab" button, and then enter your username and password. Afterwards, you might be seeing the GitLab homepage, but should very quickly and automatically be redirected to your GitDock overview page.

Start Login
Start page Login page
Self-managed installation

To log in with an account from a self-managed instance, you first have to create a personal access token:

Go to the Access Tokens page by first opening the user dropdown, clicking "Preferences" and then navigating to "Access tokens" in the left sidebar.

User dropdown Access tokens
Preferences Access tokens

Enter a token name, mark the read_api checkbox and then click "Create personal access token". On the following screen, copy the newly created access token and paste it into the GitDock application, together with the URL of your self-managed instance.

Notifications

Pipelines

Whenever you start a new pipeline, a system notification shows up and the GitDock icon in the menu bar changes to a running pipeline icon. Once the pipeline completes, you will receive another notification with the final pipeline status.

Running Completed
Running pipeline Completed pipeline

To-Dos

Whenever a new To-Do gets created for you, the system notification will show you the message, project and object where it's coming from.

To-Do notification

Configure notifications

Notifications can be configured and turned off through the notification settings in your operating system.

My Issues, MRs & To-Do list

At the top of the app, you will see the typical sections of issues, MRs and the To-Do list.

Top section

You might be used to this layout already from our GitLab UI. The only difference is that on the detail pages, you can more easily switch directly to the objects you care about by using the filters to e.g. see the last MRs you have approved and that have already been merged.

Issues MRs To-Do list
Issues Merge requests To-Dos

My commits

The first piece of content on the overview page is a list of your most recent commits. They show the commit title, project, and (if applicable) the current pipeline status for that commit. You can also navigate to each of these areas from that overview.

My commits

Recently viewed

GitDock uses your browser history to display the GitLab pages you most recently visited. Due to how it parses that information, it currently only works on Windows and MacOS with the following browsers: Chrome, Firefox, Edge, Opera, Brave, Seamonkey.

Recently viewed

On the detail page, you can go over all pages you visited over the last 10 days, and also search for specific links, if you happen to remember a certain keyword.

Recently viewed overview

Favorite projects

The list of your favorite projects initially are the projects you have starred and where you have at least developer permissions.

Favorite projects

After navigating to a project in this overview, you will be able to see the commits, issues and merge requests of that project.

Project detail

You can add/remove projects from this list on the Settings page.

Project settings

Your comments

A list of all your recent comments is also visible on the overview page. Due

Comments

The loading time for comments is significantly longer than for other objects, as each comment requires 3 API calls to collect all necessary information.

Bookmarks

If you have a specific issue or merge request you care about and know you will have to access multiple times over the next days, you can add it to you Bookmarks list.

Bookmarks

Settings

Theme

To make Gitdock as accessible and usable as possible, you can switch between dark and light theme.

Dark Light
Dark Light

Analytics

Analytics is disabled by default, you have the chance to opt in on the Settings page.

Analytics

How to contribute

The most important part of contributing right now is helping us gain better insights into how users would like to navigate GitLab in this user-centric approach. That's why it would be amazing to have as many people as possible enable Analytics. As stated in the Settings, it's 100% anonymous and we only track which objects are being used to navigate around, now which specific content (e.g. issues, MRs) users are interacting with.

If you do find any bugs, feel free to open an issue or directly create a merge request if you happen to know the fix.