https://github.com/bgpworks/boxhero-electron
박스히어로 Desktop 앱
https://github.com/bgpworks/boxhero-electron
electron inventory inventory-management
Last synced: 5 months ago
JSON representation
박스히어로 Desktop 앱
- Host: GitHub
- URL: https://github.com/bgpworks/boxhero-electron
- Owner: bgpworks
- Created: 2019-04-29T03:36:02.000Z (about 7 years ago)
- Default Branch: main
- Last Pushed: 2026-01-28T17:27:18.000Z (5 months ago)
- Last Synced: 2026-01-28T23:49:59.645Z (5 months ago)
- Topics: electron, inventory, inventory-management
- Language: TypeScript
- Homepage: https://www.boxhero.io
- Size: 4.02 MB
- Stars: 62
- Watchers: 3
- Forks: 30
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# BoxHero Desktop App
[박스히어로](https://app.boxhero.io) 데스크톱 앱

## NPM Scripts
### 설치
```sh
npm install
```
### 개발
```sh
npm run start
```
#### Linux 커스텀 프로토콜 설정
Linux 개발 모드에서 `boxhero://` 프로토콜을 사용하려면 수동 등록이 필요합니다.
```sh
# 등록
npm run setup:linux
# 해제
npm run setup:linux:unregister
```
### 패키징 & 배포
```sh
# 실행가능한 app bundle만 생성
npm run package
# 설치파일 생성
npm run make
# 배포
npm run publish-app
```
## 로컬 빌드를 준비사항
### Code Signing
#### Mac
- Code Sign용 `Developer ID Application` 인증서를 로컬에 설치합니다.
- Notarize를 위한 [App Store Connect API key](#app-store-connect-api-키-생성-방법)를 준비합니다.
#### Windows
- Azure Trusted Signing을 이용하여 EV 인증서 없이 코드 사인 합니다.
- 자세한 사용 설정 방법은 [Code signing on Windows with Azure Trusted Signing](https://melatonin.dev/blog/code-signing-on-windows-with-azure-trusted-signing)를 따릅니다.
### 환경변수 설정
[.env.example](./.env.example) 을 참고하여 필요한 환경변수들을 설정합니다.
`# for ci`로 그룹핑된 변수들은 Github action을 통한 빌드시에만 필요한 환경변수이므로 설정하지 않으셔도 괜찮습니다.
## 배포
### 프로덕션 & beta 배포에 대하여
- 환경변수 `DEV_USE_BETA_LANE`가 `t`로 설정된 경우, beta 버전으로 배포할 수 있다.
- beta 버전의 beta 버전만의 릴리즈 히스토리를 따라 업데이트가 진행된다.
- Github action으로 배포시 `release` 브랜치 외에는 `beta`로만 배포가 된다.
### 프로덕션 배포
- 배포가 결정되면, release 브랜치로 배포할 내용들을 모두 일괄 머지한다.
- Github action을 이용해 배포 관련 workflow를 수동으로 트리거한다.
- `Github` -> `Actions` -> 사이드바에서 `publish-app` workflow 선택 -> `Run workflow`
## 기타
### App Store Connect API 키 생성 방법
1. [App Store Connect access page](https://appstoreconnect.apple.com/access/api)에 방문.
2. `Keys` 탭으로 이동해 생성 및 다운로드.
3. 다운받은 API key는 `AuthKey_ABCD123456.p8`와 같이 생겼으며, 단 한 번만 다운로드가 가능하니 주의해주세요.
### Mac 빌드시 Code sign & Notarize 스킵하는 방법
환경변수 `DEV_SKIP_SIGN`을 `t` 로 설정하면 빌드 단계에서 Code sign & Notarize를 생략합니다.
### Windows 로컬 사이닝
- [.NET runtime 8.0](https://dotnet.microsoft.com/en-us/download/dotnet/8.0) 이상 설치
- [signtool](https://learn.microsoft.com/en-us/windows/win32/seccrypto/signtool) 최신 버전 설치
- [Microsoft.Trusted.Signing.Client](https://www.nuget.org/packages/Microsoft.Trusted.Signing.Client) 패키지 설치
아래 환경변수를 알맞게 설정
```
AZURE_CLIENT_ID="fill_here"
AZURE_CLIENT_SECRET="fill_here"
AZURE_TENANT_ID="fill_here"
AZURE_CODE_SIGNING_DLIB="C:\path\to\Azure.CodeSigning.Dlib.dll"
SIGNTOOL_PATH="C:\path\to\signtool.exe"
```
### Azure Trusted Signing 갱신
- 2년에 한번씩 Identity Validation을 해야 한다. (3/22/2028 만료 예정)
- App Registrations > trusted-signing user의 secret(`AZURE_CLIENT_SECRET`)도 2년에 한번씩 만료 되므로 갱신해줘야 한다. (12/18/2027 만료 예정)
## 스크린샷






