walter-juan / ghd

GHD - GitHub Dashboard

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

⚠️ This is a personal project created to solve a need and play with it, try some libraries, etc.

That said, I'm not responsible if one day the app stops working or doesn't work properly and you need to re-install it. This should not happen, but if a re-installation is needed it will be written in the release notes.

GHD

GHD (GitHub Dashboard), is an application to show the pull requests and releases from your GitHub repositories.

Features:

  • List of the pull requests (open, draft, merged & closed)
    • Mark a pull request as seen to know later if it has been updated
    • Filter pull request by branch
  • List latest releases from a repository
  • Notifications
    • Notify when pull request is created or updated
    • Notify when a new release is created
  • Light and dark themes
☀️ Light Theme 🌒 Dark Theme
ghd-pull-requests-light ghd-pull-requests-dark
ghd-releases-light ghd-releases-dark

Installation

Windows application

Download the exe file from releases and install.

macOS application

The macOS application is unsigned and to be able to run the com.apple.quarantine has to be removed. Right now, as this app is more for personal use, I don't want to register and do all the stuff about signing with Apple.

The com.apple.quarantine attribute is used to determine if an application should be checked (and blocked if needed.)

So if you want to use this app you should remove the com.apple.quarantine.

How to install

  1. Download the dmg file from releases
  2. Open the dmg file and move the application to Applications folder
  3. Open terminal and run:
xattr -d com.apple.quarantine /Applications/ghd.app

Sources

Commands

  • Show the attributes

    xattr /path/to/my-app.app
  • Remove the com.apple.quarantine attribute

    xattr -d com.apple.quarantine /path/to/my-app.app
  • Remove the com.apple.quarantine attribute recursively for the entire targeted .app directory contents

    sudo xattr -dr com.apple.quarantine /path/to/my-app.app
  • Remove the all attributes + recursively

    sudo xattr -cr /path/to/my-app.app

Useful Gradle commands

By default, the debug flag is enabled, example how to remove it:

$ ./gradlew build -PdebugConfig=false
  • Run the app
    ./gradlew run
  • Build the project
    ./gradlew build
  • Clean the project
    ./gradlew clean
  • Clean the debug app folder
    ./gradlew ghdCleanDebugAppFolder
  • Create the packages
    ./gradlew packageDistributionForCurrentOS
  • To know which dependencies have updates
    ./gradlew dependencyUpdates
  • Update Gradle version
    ./gradlew wrapper --gradle-version 7.5.1

Scripts

The folder scripts contains some scripts in Ruby:

  • Scripts must be executed from the scripts folder
    cd scripts
  • Download octicons
    bundle exec ruby octicons-download.rb
  • Download remixicon
    bundle exec ruby remixicon-download.rb

Database

The database used in this project is H2 because of encryption support + embedded. As the database is encrypted a user and password is required, you can find it in DbSettings.

H2 Commands

  • SCRIPT: Creates a SQL script from the database.

H2 Console

For more detailed information follow the tutorial from H2.

  1. Download H2 console app:
  2. From terminal run the h2 $ java -jar h2*.jar and the web browser will be opened.
  3. In the DbSettings you can find all the data required like the URL, driver, user and password

Links

About

GHD - GitHub Dashboard

License:GNU General Public License v3.0


Languages

Language:Kotlin 99.7%Language:Ruby 0.3%