I've been building OctoLab, an unofficial GitLab client for Android. It works with gitlab.com and self-hosted GitLab (CE/EE), started as a GitLab-focused fork of OctoDroid, and is Apache 2.0 licensed.

What it does:

  • Issues and merge requests: browse, create, edit, comment, review diffs, subscribe/unsubscribe
  • To-dos | Participating: your to-dos plus new comments on issues and MRs you take part in, with notifications and counts per account
  • Your activity as a timeline, grouped by project
  • Projects: files, README, branches, tags, commits, releases, code search; images, videos and files open in the app
  • Bookmarks for projects, groups, issues, MRs, commits and snippets
  • Sign in with gitlab.com in your browser (OAuth), or with a token on any GitLab instance
  • Epics (Premium/Ultimate): a group's epics with their child items, comments and reactions
  • Role-aware: shows what your GitLab role allows; what it doesn't is hidden or explained
  • Multi-account (self-hosted and gitlab.com side by side), dark and light theme

No tracking, no analytics, no proprietary services.

F-Droid: https://f-droid.org/packages/com.secninjaz.octolab/

GitHub (releases, Obtainium): https://github.com/secninjaz/OctoLab

Feedback and bug reports welcome.

Edit: How it's built: development happens on our own GitLab instance in small commits; each release is squash-merged into one commit on GitHub, so issue numbers in commit messages and changelogs refer to that internal tracker. Development is AI-assisted, as disclosed in the README; I review and test every change on my own devices before release, and the full changelog is in each GitHub release.

Development is AI-assisted (disclosed in the README); every change is reviewed and tested by a human.

you are viewing a single comment's thread
view the rest of the comments
[–] [S] -4 points 1 day ago (5 children)

Thanks for the feedback. I will consider modifying disclosure as and if applicable.

For clarity, the app is not made from scratch and is a fork of OctoDroid(FOSS client for github) so only gitlab specific APIs and screen changes have been modified/added. There's no 1000-4000 lines to review at any point of time. Commits are made in small batches while fixing/development/test cycles and squash-merged into one commit for release, so you probably are referring to such squashed commits. I don't blame you for thinking that and your feedback makes sense.

On a side note, I just recently saw a post on Lemmy regarding reddit becoming too negative recently. It seems its not specific to reddit and Lemmy may not be so different in that regard, especially as the userbase grows.

  • source
  • parent
  • hideshow 5 child comments
  • [–] 4 points 19 hours ago (1 child)

    On a side note, I just recently saw a post on Lemmy regarding reddit becoming too negative recently. It seems its not specific to reddit and Lemmy may not be so different in that regard, especially as the userbase grows.

    lemmy's ranks are filled with moonlighting/ex-redditors who have brought their toxicity with them -- the only way to avoid most of it is to stick to the instances and communities that predate the first reddit diaspora and you can see this for yourself in how all the negativity you're getting is coming from other instances.

    lemmygrad, hexbear and lemmy.ml are some of the original instances that a majority of the lemmyverse still federates with and there are still plenty of ex-redditors on that last one so be advised.

  • source
  • parent
  • hideshow 1 child comment
  • [–] 1 point 1 day ago (1 child)

    Am I right that those smaller commits and branches are not in the public repo though? Some commits also mention they close issues but those issues also do not exist in the repo? E.g.

    https://github.com/secninjaz/OctoLab/commit/796e859c7165b6d4543f1491e0dd5fde169d8d2d

    ...Closes #275, #277 and #278

    What do these refer to?

  • source
  • parent
  • hideshow 1 child comment
  • [–] [S] 1 point 1 day ago* (last edited 1 day ago)

    Yes, those are not on public repo, github releases mention that although its not mentioned in readme.

    That refers to development and fix cycles over days/week and then squash-merged into a release. Those are worked on an internal gitlab repo so they're not on github but release notes include full changelogs.

    To avoid confusion, maybe I should exclude issue numbers from changelogs unless they're from github issues.

  • source
  • parent