# Gloom is a Material You GitHub client you install from a build artifact

> Gloom is an open source Android GitHub client written in Kotlin with Jetpack Compose, distributed as a GitHub Actions build rather than through a store, and licensed under GPL-3.0.

**MateriiApps/Gloom** — GitHub reimagined with Material You

- Repository: https://github.com/MateriiApps/Gloom
- Stars: 789 · Forks: 37
- Language: Kotlin
- License: GPL-3.0
- Published: 2026-10-20 · Updated: 2026-10-20 · Language: en
- Canonical page: https://hysenlabs.com/projects/materiiapps-gloom

## A GitHub client built for Material You on Android

Gloom is a GitHub client for Android whose whole identity is the Material You design language. The screenshots in the repository are shown twice, once in the dark scheme and once in the light scheme, and the four screens you can see are Home, Explore, Profile and Repo. That framing tells you the audience: people who already run Android 12 era devices with dynamic colour and want their GitHub client to pick up the system palette rather than look like a transplanted desktop web app. The implementation is Kotlin with Jetpack Compose, the repository topics list both, and the topic set also includes the github-mobile tag, which places the project in the same category as the official mobile clients rather than in the world of web front ends. It is a community project rather than a company product, and the README is explicit that contributions do not require programming skills, since testing, filing issues and translation are all listed as ways to help.

## A Gradle multi-module layout with an api layer

The repository is a Gradle project built from Kotlin build scripts, with build.gradle.kts and settings.gradle.kts at the top level and a gradlew wrapper plus gradlew.bat committed for both Linux and Windows. The source is split into several modules, and the names describe the architecture. There is an api module, which is where the GitHub API access lives and which makes the interesting possibility that the client logic can be reused rather than only the screens. There is a shared module for code used across features, a ui module for the presentation layer, and an app module that assembles the shipped application, which is where the debug apk path in the build instructions comes from. A lint directory sits alongside the modules, and gradle.properties carries the build configuration. The structure is conventional for a Compose application, and it is worth noting for anyone considering contributing: the separation between api, shared and ui means a change to data access does not have to touch the screens.

## Installing the app from an Actions artifact

There is no release to download, because the repository has no GitHub releases. Installation therefore goes through the continuous integration build. The README lists the steps plainly:

1. Download the latest actions build from the nightly.link link for the build workflow, and if you are on a PC, transfer the file over to your phone
2. Unzip `gloom-release.zip`
3. Make sure to allow install unknown apps
4. Install the apk

That third step is the one to think about. Allowing installs from unknown sources is a real decision, not a formality: it tells the system to trust any APK you sideload, not only this one. The workflow badge in the README points at a debug build for the main branch, and the download link used in the installation instructions points at the release zip produced by the same workflow, so the artifact you install is whatever that run produced, which is another reason to look at the date of the build before installing it.

## Building from source with JDK 11 and the Android SDK

If you would rather build the app yourself, the prerequisites are Git, JDK 11 and the Android SDK. The clone step is a single command:

```bash
git clone https://github.com/MateriiApps/Gloom.git && cd Gloom
```

On Linux the wrapper script needs to be made executable before the build runs:

```bash
chmod +x gradlew && ./gradlew assembleDebug
```

The README gives the Windows form of the same build as ./gradlew assembleDebug, which is the wrapper batch file path for that platform. The result is a debug apk, and it is installed on a connected device over adb:

```bash
adb install app/build/outputs/apk/debug/gloom-debug.apk
```

That step requires usb debugging to be enabled on the phone, which the README links to the Android developer documentation. The sequence from source to device is therefore short and entirely command line, which makes the project easy to try on a machine that already has an Android toolchain, and less convenient for anyone who does not.

## No release channel means updates are your problem

The structural weakness of Gloom is distribution, and it shows up in several ways at once. There are no GitHub releases, so there is no version history to point at and no upgrade path through an app store. Installation requires the unknown sources route, and the artifact comes from a continuous integration run rather than from a curated release. The project tracks its own work on a roadmap hosted as a GitHub project board under the MateriiApps organisation, which is where you would look to see what is planned. The README does not describe the features of the four screens beyond showing them, so a new user has no written map of what the app does, and the repository has not published a release since its last push on 2026-06-13. Compared with any client distributed through the Play Store, the difference in approach is that the update channel is the build workflow rather than a store: you get closer to the source, and you also take on the job of noticing that a newer artifact exists.

## Translation, community testing and GPL-3.0 terms

Two community channels are set up. Translations are managed through Crowdin, with a crowdin.yml file at the repository root and a link to the Crowdin project, so localising the interface is a documented path rather than an invitation to edit string resources by hand. Issues use GitHub issue templates, with a link to create a new issue and a chooser for different report types. The licence is the GNU General Public License v3.0, and the README states it plainly, with a LICENSE file in the repository and a licence badge in the header. That matters more than usual for an Android client, because the copyleft obligations attach to the shipped binary, so anyone who wants to fork the app or ship a modified build has to work within the GPL terms or not distribute it. For contributors who only want to translate or file reports, the licence has no practical effect.

## Conclusion

Adopt Gloom if you want a native Android GitHub client that follows the Material You dynamic colour scheme and you are comfortable installing an APK from a build artifact you trust. Do not adopt it if you need a store with automatic updates, a stable release channel, or an app whose feature set has been documented, because Gloom has no GitHub releases and its README does not describe what the Home, Explore, Profile and Repo screens do beyond showing them. Before you install, check the date of the last push, which was on 2026-06-13, confirm that your device can install apps from unknown sources, and read the LICENSE file, since the project is GPL-3.0 and the repository includes an api module you may want to reuse.

## FAQ

### How do I install Gloom on my Android phone?

Download the latest actions build from the nightly.link link in the README, unzip gloom-release.zip, allow installing unknown apps on your device, and install the apk. There is no GitHub release to fetch, and no store listing is mentioned in the documentation.

### Can I build Gloom from source?

Yes. The prerequisites are Git, JDK 11 and the Android SDK. Clone the repository, run chmod +x gradlew && ./gradlew assembleDebug on Linux or ./gradlew assembleDebug on Windows, then install the resulting apk on a device with usb debugging enabled using adb install app/build/outputs/apk/debug/gloom-debug.apk.

### What licence is Gloom released under?

Gloom is licensed under the GNU General Public License v3.0, with the licence text kept in the LICENSE file at the repository root. Anyone distributing a modified build of the app needs to follow those copyleft terms.

### How can I help with Gloom without writing code?

The project lists three ways: test the app and report issues through the issue templates, translate it through the Crowdin project linked from the README, and follow the roadmap published as a GitHub project board under the MateriiApps organisation.

## Sources

- [Issues](https://github.com/MateriiApps/Gloom/issues)
- [License: GPL-3.0](https://github.com/MateriiApps/Gloom/blob/main/LICENSE)
- [MateriiApps/Gloom on GitHub](https://github.com/MateriiApps/Gloom)
- [README](https://github.com/MateriiApps/Gloom/blob/main/README.md)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/materiiapps-gloom
