mirror of
https://github.com/abhigyanpatwari/GitNexus.git
synced 2026-09-22 00:31:17 +00:00
- Introduced a new job `validate` in the GitHub Actions workflow to validate the desktop package. - Added steps for checking out the repository, setting up Node.js, installing dependencies, type checking, and running unit tests. - Updated the `package` job to depend on the `validate` job. chore: update package-lock.json and package.json for vitest integration - Added `vitest` as a development dependency in `package.json`. - Updated `typecheck` script to include a new TypeScript configuration for vitest. - Updated `package-lock.json` to reflect the new dependencies. refactor: modularize runtime path handling in main process - Created a new module `runtime-paths.ts` to handle static path normalization and request handling. - Refactored `main.ts` to utilize the new `normalizeStaticPath`, `getRequestedPath`, and `getPackagedRendererEntry` functions. test: add unit tests for runtime path utilities - Implemented tests for `normalizeStaticPath`, `getRequestedPath`, and `getPackagedRendererEntry` using Vitest. - Ensured coverage for directory traversal attempts and null-byte paths. chore: configure Vitest for testing - Added `vitest.config.ts` for Vitest configuration. - Created `tsconfig.vitest.json` to include types for Vitest in TypeScript compilation. Co-authored-by: Copilot <copilot@github.com> |
||
|---|---|---|
| .. | ||
| build | ||
| scripts | ||
| src | ||
| test | ||
| .gitignore | ||
| electron-builder.yml | ||
| electron.vite.config.ts | ||
| package-lock.json | ||
| package.json | ||
| README.md | ||
| tsconfig.json | ||
| tsconfig.node.json | ||
| tsconfig.renderer.json | ||
| tsconfig.vitest.json | ||
| vitest.config.ts | ||
GitNexus Desktop
Electron desktop shell for GitNexus. The app starts the local backend and loads the real gitnexus-web UI inside the desktop window.
Commands
npm run dev
npm run build:dir
npm run build:win
npm run build:mac
npm run build:linux
npm run devstarts the Electron shell plus the local GitNexus backend.npm run build:dircreates an unpacked desktop app directory.npm run build:wincreates a Windows NSIS installer.exe.npm run build:maccreates a macOS.dmg.npm run build:linuxcreates a Linux.AppImage.npm run smoke:unpackedlaunches the latest unpacked desktop build, verifies startup, and exits.
Build output is written under gitnexus-desktop/release/<timestamp>/.
PR Artifacts
The Desktop Packaging GitHub Actions workflow builds an unpacked desktop app, smoke-tests startup, then uploads preview desktop artifacts for pull requests that touch .github/workflows/desktop-packaging.yml, gitnexus-desktop/**, gitnexus/**, gitnexus-web/**, or gitnexus-shared/**.
gitnexus-desktop-windowscontains the Windows NSIS installer.exeandwin-unpacked/.gitnexus-desktop-macoscontains the macOS.dmgandmac*/output.gitnexus-desktop-linuxcontains the Linux.AppImageandlinux-unpacked/.
GitHub artifact URLs are run-specific and expire, so use the artifact names above from the latest successful PR workflow run.