This project is a small, single-purpose, wibecoded dashboard that aggregates open Pull Requests (GitHub) and Merge Requests (GitLab) where the user is involved (author, assignee, or reviewer). It is intentionally lightweight and focused on that single purpose.
- Fetches PRs/MRs the current user is involved with (author/assignee/reviewer)
- Shows review states, approvals and pipeline status
- Stores settings locally (development build uses
localStorageby default)
- Node.js (recommended v18+)
- npm
- If building for desktop (Tauri): Rust toolchain and
@tauri-apps/cli(see Tauri docs)
Install dependencies:
npm installRun the dev server (hot reload):
npm run devThis runs TypeScript build checks and produces a Vite production build of the frontend:
npm run buildPreview the production build locally:
npm run previewThis repository includes a src-tauri directory. To build a Tauri desktop app you will need the Rust toolchain and Tauri CLI. Typical steps (after installing Rust and Tauri prerequisites) are:
# build the frontend first
npm run build
# then build the Tauri app (example)
# (adjust for your platform; this requires @tauri-apps/cli)
npx tauri build- The app stores user tokens in
localStorageunder keydashgit-settingsin the current implementation. For production/desktop apps consider using OS-secure storage (keychain) or Tauri's secure storage plugins. - If you add tokens during development, do not commit them into the repo. Rotate any tokens accidentally exposed.
- Move tokens out of
localStorageto secure storage before shipping. - Add secret-scanning in CI (git-secrets, truffleHog, or GitHub secret scanning).
- Limit the scopes of Personal Access Tokens (PATs) used with GitHub/GitLab.
- Main UI and app logic:
src/App.tsx - Adapters for APIs:
src/adapters/github.tsandsrc/adapters/gitlab.ts - Types:
src/types.ts - Tauri desktop glue:
src-tauri/
This repository is a minimal, single-purpose project (wibecoded). Use and modify as you like.