A native desktop client for managing GitLab repositories.
- Electron
- electron-vite
- React + TypeScript
- Tailwind CSS
- Zustand
- TanStack Query
- better-sqlite3
This project uses pnpm.
Current package manager version in package.json:
pnpm@10.17.1
- Node.js 20+
- pnpm 10+
- macOS, Windows, or Linux
-
Install dependencies
pnpm install
-
Start development mode
pnpm run dev
- Development: pnpm run dev
- Build: pnpm run build
- Preview: pnpm run preview
- Package desktop app: pnpm run package
- Type check: pnpm run typecheck
- Type check (node config): pnpm run typecheck:node
- Lint: pnpm run lint
- Lint fix: pnpm run lint:fix
- Format: pnpm run format
- Test: pnpm run test
- Test watch: pnpm run test:watch
- src/main: Electron main process code
- src/preload: secure preload bridge
- src/renderer: React renderer app
- src/shared: shared IPC channels and domain types
- App build output: release
- Bundled app code: out
- Postinstall runs electron-rebuild for better-sqlite3.
- Lockfile is managed by pnpm through pnpm-lock.yaml.