ngx-electron-bridge
TypeScript icon, indicating that this package has built-in type declarations

2.1.0 • Public • Published

Logo

NGX Electron Bridge

Custom bridge library for Electron & Angular applications

Report Bug . Request Feature


licence npm version


About The Project

Isolated context bridge library for Electron & Angular applications.

Getting Started

This project work with Electron application that are powered by Angular. We suggest using Nx Electron for this purpose.

Installation

npm install ngx-electron-bridge

Usage

  1. Expose you desired context - [main process - preload script]
    import { ContextBridgeService } from 'ngx-electron-bridge';

    const ContextBridgeService = new ContextBridgeService()
      .addIpcBridge("myExposedFunctionSignature", "my-exposed-function")
      .addIpcBridge("anotherExposedFunctionSignature", "another-exposed-function")
      .expose();
  1. Handle IPC call (in case of IPC execution) - [main process]
    import { ipcMain } from 'electron';

    ipcMain.handle("my-exposed-function", (event, ...args) => {
        console.log(args);
    });
  1. Invoke the exposed context - [renderer process]
import { Component, Inject } from '@angular/core';
import { ElectronBridge } from 'ngx-electron-bridge';

@Component({...})
export class AppComponent {
  constructor(@Inject(ElectronBridge) private _electronBridge: any) {
    _electronBridge.myExposedFunctionSignature(...args);
  }
}

Default bridges

  • platform(): returns a promise of the platform name.
  • arch(): returns a promise of the system architecture.

Roadmap

See the open issues for a list of proposed features (and known issues).

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  • If you have suggestions for adding or removing projects, feel free to open an issue to discuss it, or directly create a pull request after you edit the README.md file with necessary changes.
  • Please make sure you check your spelling and grammar.
  • Create individual PR for each suggestion.
  • Please also read through the Code Of Conduct before posting your first idea as well.

Creating A Pull Request

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

Distributed under the Apache 2.0 License. See LICENSE for more information.

Authors

Versions

Current Tags

  • Version
    Downloads (Last 7 Days)
    • Tag
  • 2.1.0
    2
    • latest

Version History

Package Sidebar

Install

npm i ngx-electron-bridge

Weekly Downloads

2

Version

2.1.0

License

Apache 2.0

Unpacked Size

35.9 kB

Total Files

14

Last publish

Collaborators

  • benny.megidish