A Flutter-based cross-platform GitLab workflow client that pairs GitHub Mobile-grade UX with GitLab's Merge Requests, CI/CD, and self-hosted support.
Pre-release. Sign-in, projects, issues, merge requests, diffs, pipelines, job logs, the to-do inbox and search are built and tested. Not yet published to any store — see RELEASING.md.
The same code branches on width rather than platform, so a tablet gets a navigation rail and the room to show twenty merge requests at once:
Screenshots show gitlab-org/gitlab, a public project.
LabFox began as a focused workflow client: make the work developers do every day fast. A maintainer-approved expansion now tracks broader GitLab mobile-web coverage in the parity inventory.
Check notifications
↓
Open the Issue / Merge Request
↓
Read the diff and review
↓
Check pipeline status
↓
Check job logs
↓
Approve / Merge / Retry
Where the GitLab web UI splits its menus by feature, LabFox reorganizes them around the task at hand.
Home
├── My Issues
├── Merge Requests
├── Review Requests
├── Pipelines
├── Projects
└── To-do
| GitHub Mobile-grade UX | Information density and flow designed for development work on the go |
| GitLab CI/CD | Pipelines, job logs, retries, and manual jobs — all from your phone |
| Self-hosted / Multi Account | GitLab.com and your company's instance are equal citizens |
| Four platforms | Android · iOS · Windows · macOS |
Flutter · Dart · Riverpod · Dio · go_router · flutter_secure_storage · intl
A local cache (Drift/SQLite) is planned for after 1.0; today the repositories are network-only.
UI → Controller (Riverpod) → Repository → GitLab API Client → GitLab
Monorepo layout:
labfox/
├── apps/labfox/ Flutter application
└── packages/
├── gitlab_api/ GitLab REST / GraphQL client (pure Dart)
├── gitlab_models/ DTO / Entity
├── design_system/ LabFox Design System
└── secure_storage/ Platform secure storage wrapper
| M0 Foundation | Scaffolding, routing, theming, responsive layout, API client skeleton | ✅ |
| M1 Repository | PAT login, Projects, Repository Browser, File Viewer | ✅ |
| M2 Collaboration | Issues, Merge Requests, Diff, Discussion, Approve, Merge | ✅ |
| M3 CI/CD | Pipeline, Jobs, Job Log, Retry, Cancel, Manual Job | ✅ |
| M4 Product | OAuth, Self-hosted, Multi Account, Inbox, Search, Deep Links | ✅ |
| 1.0 Release | Store listings, background notifications, offline cache | in progress |
Details: .agents/docs/roadmap.md
The maintainer-approved GitLab mobile-web expansion is tracked in the parity inventory. It distinguishes shipped slices from known gaps; it is not a claim of complete web parity.
Contributions are welcome. Read CONTRIBUTING.md before you start.
One Flutter codebase powers all four platforms, so a bug you fix on desktop is fixed on mobile too.
Desktop contribution → shared codebase → every platform improves
This repository is developed together with coding agents.
The working rules live in AGENTS.md, and they apply to human contributors just the same.
Work flows Issue → Branch → Pull Request. Nothing is committed directly to main.
gh issue create --title "..."
git switch -c feat/12-mr-diff-viewer dev
git commit -s -m "feat(scope): ..."
gh pr create --fill --base dev
- Branches:
<type>/<issue-number>-<slug>(featfixdocsrefactortestchore) - Commits: Conventional Commits with a DCO sign-off (
git commit -s) - Link the issue from the PR description with
Closes #N - Details:
.agents/docs/workflow.md
- CONTRIBUTING.md — contribution process, DCO, license rules
AGENTS.md— architecture, conventions, what's off-limits, 1.0 scope.agents/docs/— detailed docs (architecture · conventions · api-reference · references · roadmap).agents/docs/workflow.md— the Issue → Branch → PR processdocs/mobile-web-parity.md— shipped slices and remaining mobile-web work.agents/skills/— playbooks for each type of task
The source code is released under the Apache License 2.0. → LICENSE
Source code Apache-2.0 open source — anyone may use, modify, redistribute
Windows Direct download, free, full features
macOS Mac App Store, free, full features
Android / iOS Free download, full features
Every LabFox feature is free on desktop and mobile, with no ads or in-app purchases. There is no LabFox account or server. GitLab's own permissions and server-tier requirements still govern what each instance allows. The shared Flutter codebase lets a fix contributed on desktop improve mobile too.
Distribution policy: .agents/docs/monetization.md
Third-party dependency licenses: THIRD_PARTY_NOTICES.md
The "LabFox" name and logo are not covered by the Apache-2.0 license. Section 6 of the Apache License 2.0 explicitly withholds trademark rights.
You are free to use, modify, and redistribute the code. However, shipping a modified version under the "LabFox" name or logo requires prior permission. Forks must use a different name and icon.
Full details: TRADEMARK.md
LabFox is an unofficial third-party client and is not affiliated with, endorsed by, or certified by GitLab Inc. or GitHub, Inc. "GitLab" is a trademark of GitLab Inc.; "GitHub" is a trademark of GitHub, Inc.




