Barcode to PC server

Useful links

Downloads

Repositories

Build status

Build status Build Status

Setup

  1. Install the required dependencies:
  2. Clone the repository
    git clone https://github.com/fttx/barcode-to-pc-server/
    cd barcode-to-pc-server
    npm install

Release

npm run dist # build the angular project in prod mode and generate the app install files for the current platform, works with Windows/macOS/Linux. Out dir: dist/dist/
npm run publish # build the angular project in prod mode and generate the app installer for all platforms and uploads them to GitHub releases
npm run publish-win  # build the angular project in prod mode, generate the app installer for Windows x32, for Windows x64 and uploads them to GitHub releases
npm run publish-ml  # build the angular project in prod mode, generate the app installer for macOS, Linux and uploads them to GitHub releases
  • To sign the installers follow the electron-builder code-signing tutorial. TL;DR: set CSC_LINK and CSC_KEY_PASSWORD environment variables.
  • To enable the publishing to GitHub releases set GH_TOKEN environment variable and give all the repo permissions
  • The installer will be put in the dist/dist/ folder.
  • If you get sass errors run npm run fix-sass

Run

  • If you're working on the angular project (src):
# run npm build before

npm start # run electron with dev tools and the webserver with livereload
  • If you want to open it on your browser without electron:
npm run browser # run the webserver with livereload only
  • If you're working on the electron/main.ts file:
npm run watch # run the webserver with livereload and also watch the electron/main.ts file
npm run electron-dev # run electron with dev tools or press F5 if you're using VSCode to start debugging

Publishing updates

The server implements electron-update.

To publish an update:

  1. Increase the version number of the package.json
  2. Commit & push the changes
  3. Add a tag and name it v<new version number>
  4. Push the tag

Upon the tag push, travis and appveyor will build and sign the new installers. At this point if all looks good the only thing left to do is to publish the Github release draft.