Home
Softono
b

bgpworks

Professional software vendor delivering innovative solutions on the Softono platform. Specialized in both open-source and proprietary software development.

Total Products
1

Software by bgpworks

boxhero-electron
Open Source

boxhero-electron

# BoxHero Desktop App [박스히어로](https://app.boxhero.io) 데스크톱 앱 ![제품목록](screenshots/item_list.png) ## 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 만료 예정) ## 스크린샷 ![제품 정보](screenshots/item_detail.png) ![대시보드](screenshots/dashboard.png) ![입출고](screenshots/stock_in.png) ![바코드 스캔](screenshots/barcode_scan.png) ![바코드 라벨 디자인](screenshots/label_design.png) ![바코드 라벨 인쇄](screenshots/label_print.png) ![입출고 내역](screenshots/transaction_history.png)

Inventory Management
64 Github Stars