A desktop client for the Symphony Collaboration Platform built using Electron
Go to file
Keerthi Niranjan c3b82a0869 SEARCH-598 and SEARCH-611 (Deleting data folder on Electron Crash) (#307)
- Deleting the data folder on crash and unexpected shutdown
- Created script for clearing the index data on start up
- Working in dev env
- Added path to package
- Windows path file change
- Working on production build
- Completed implementation
- Few changes to callback
- Few changes to callback
- Updated package
- Fixed windows bug
- Fixed windows bug
- Fixed windows bug
- Added exe for task
- Added exe for task
- Fixed exe file
- Code refactoring
- Updated api file
- Added uuid for the task name
- Updated exe for the uuid
- Updated API file
- AIP version
- Fixes all the scenarios for mac
- Updated the boot file to clear data file on login
- Fixed data folder deleting on application is open
- Windows launch agent
- Working on all the scenario
- Added a launch script and starting the register
- Updated search-win-task.exe file
- Updating the aip file
- Updating the aip file
- Removed randomString lib
- Requested changes (PR)
- Included the library from new repo electron-uitls
- Updated AIP file
- Updated AIP
- Bumped up electron-utils version
- Added missing quotes
- Bumped up electron-utils version
- Added missing quotes
- Bumped utils version
- Bumped utils version
- Update AIP
2018-03-15 16:37:50 +05:30
build update dmg img 2017-02-13 16:31:42 -08:00
config Electron-266 (Custom title bar for Windows 10) (#311) 2018-03-09 16:16:47 +05:30
demo Electron-318 (Included build number in the client version info) (#314) 2018-03-12 17:05:25 +05:30
installer SEARCH-598 and SEARCH-611 (Deleting data folder on Electron Crash) (#307) 2018-03-15 16:37:50 +05:30
js SEARCH-598 and SEARCH-611 (Deleting data folder on Electron Crash) (#307) 2018-03-15 16:37:50 +05:30
library SEARCH-598 and SEARCH-611 (Deleting data folder on Electron Crash) (#307) 2018-03-15 16:37:50 +05:30
tests SEARCH-598 and SEARCH-611 (Deleting data folder on Electron Crash) (#307) 2018-03-15 16:37:50 +05:30
.eslintignore update to badget count interface (#32) 2017-03-09 10:12:28 -08:00
.eslintrc more ssf name-space updates (#79) 2017-05-08 10:46:56 -07:00
.gitignore ELECTRON-307 : add 32 bit windows installer support (#313) 2018-03-07 22:22:27 +05:30
LICENSE added LICENSE and NOTICE files 2016-12-03 00:59:30 +01:00
NOTICE added LICENSE and NOTICE files 2016-12-03 00:59:30 +01:00
package.json SEARCH-598 and SEARCH-611 (Deleting data folder on Electron Crash) (#307) 2018-03-15 16:37:50 +05:30
PULL_REQUEST_TEMPLATE.md Electron-217 2017-12-11 22:41:34 +05:30
README.md Updated README 2017-11-20 16:35:27 +05:30

Symphony Software Foundation - Incubating

SymphonyElectron

About:

SymphonyElectron is a desktop client of the Symphony Communication Platform built for macOS, Windows 10 and Windows 7.

Project Goals:

Our goal is to improve the performance and development agility of Symphony's desktop wrapper and build a path to support other wrappers by:

  1. Standardizing the JS to native interfaces
  2. Standardizing the app to app interfaces (current embedding API)
  3. Provide an open and free reference implementation that anyone can contribute to, modify, and make derivative works.

In order to achieve those goals Symphony is participating and working in close collaboration with the Foundation Desktop Wrapper Working Group

Windows Dev Env

  • NodeJS version >= 7.4.0 (corresponds to electron 1.6.7)
  • install Microsoft Visual Studio 2015 with both C++ and .NET/C# development tools. Free community versions works.
  • also make sure .NET3.5SP1 is installed.
  • note: C++ tools needed to recompile node modules
  • note: .NET/C# tools needed to compile screen-snippet
  • open 'Developer Command Prompt for VS2015' - this sets paths to visual studio build tools

Mac Dev Env

  • need to install xcode command line tools.
  • NodeJS version >= 7.4.0 (corresponds to electron 1.6.7) - needed to run tests locally

Run demo:

  • npm install
  • npm run demo-win (for windows)
  • npm run demo-mac (for mac osx)

Build Instructions:

  • npm install
  • to run locally: npm run dev
  • to build mac pkg:
  • to build win msi: npm run unpacked-win (for 64 bit) and use 'advanced installer' .aip file in installer/ dir

msi command line options:

  • to install for all users (admin required): msiexec.exe /i Symphony-x64.msi ALLUSERS=1
  • to install per user: msiexec.exe /i Symphony-x64.msi ALLUSERS=""
  • to change default pod url: msiexe.exe /i Symphony-x64.msi POD_URL=my.symphony.com
  • to change auto start: msiexe.exe /i Symphony-x64.msi AUTO_START=true (or false) - if not specified default it true.
  • to change minimize on close: msiexe.exe /i Symphony-x64.msi MINIMIZE_ON_CLOSE=true (or false) - if not specified default is true.
  • any of the above options can be chained together, for example: msiexe.exe /i Symphony-x64.msi MINIMIZE_ON_CLOSE=true AUTO_START=false POD_URL=my.symphony.com

Start URL

  • To change the start url (i.e., pod url), edit config/Symphony.config and change 'url' variable. if no protocol provided, then https will be added.
  • The installer will include file config/Symphony.config next to executable. Changes in this file will effect all users.

Tests and Code Coverage

  • jest framework is used to run tests: http://facebook.github.io/jest/
  • to run tests and get code coverage report: npm test
  • code coverage reports are placed in dir: converage
  • tests are located in dir: tests

Logging

  • Local logging is enabled for dev environments using the module electron-log
  • On macOS, the logs are stored under ~/Library/Logs/<app name>/log.log
  • On Windows, the logs are stored under %USERPROFILE%\AppData\Roaming\<app name>\log.log
  • Remote logging is enabled for local and production cases and are sent to the backend server via the remote objects

Misc notes

  • If desiring to run against server without proper cert use cmd line option: --ignore-certificate-errors
  • To start additional instance with custom data directory (if you want seperate user) use cmd line options: --multiInstance --userDataPath=
    • if directory doesn't exist, it will be created