filemantis-electron

0.0.0-development • Public • Published

filemantis-electron

semantic-release

filemantis-electron is a small Module for Angular which makes calling Electron APIs from the Renderer Process easier. By adding it to your Angular project, you'll get IntelliSense and a simple Angular service which acts as facade for Electron APIs.

filemantis-electron is licensed under MIT.

Introduction

Checkout the introduction post on my blog for more details.

Support me

Become a Patron!

Installation

filemantis-electron can be installed easily using either yarn or npm commands in the scope of an angular project.

yarn add filemantis-electron --save
# or
npm install filemantis-electron --save

The FileMantisElectronModule needs to be import in your root Angular module (eg AppModule).

import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { AppComponent } from './app.component';

import { FileMantisElectronModule } from 'filemantis-electron';


@NgModule({
    declarations: [],
    imports: [
      BrowserModule,
      FileMantisElectronModule
    ],
    bootstrap: [AppComponent]
})
export class AppModule {

}

Once the module has been imported, you can easily use dependency injection to get an instance of ElectronService.

import { Component } from '@angular/core';
import { ElectronService } from 'filemantis-electron';

@Component({
  selector: 'my-app',
  templateUrl: 'app.html'
})
export class AppComponent {

    constructor(private _electronService: ElectronService) { }

    public playPingPong() {
        if(this._electronService.isElectronApp) {
            let pong: string = this._electronService.ipcRenderer.sendSync('ping');
            console.log(pong);
        }
    }
}

ElectronService

The ElectronService is exposing all API's accessible from within Electron's renderer process. If your app is not running inside electron, all getters will return NULL instead.

Properties

  • desktopCapturer: Electron.DesktopCapturer - Electron's desktop capturing API
  • ipcRenderer: Electron.IpcRenderer - Electron IpcRenderer
  • remote: Electron.Remote - Electron Remote capabilities
  • webFrame: Electron.WebFrame - Electron WebFrame
  • clipboard: Electron.Clipboard - Clipboard API
  • crashReporter: Electron.CrashReporter - Electron's CrashReporter
  • process: NodeJS.Process - Electron's Process Object
  • screen: Electron.Screen - Electron's Screen API
  • shell: Electron.Shell - Electron's Shell API
  • nativeImage: Electron.NativeImage - Electron's NativeImage API
  • isElectronApp: boolean - Indicates if app is being executed inside of electron or not
  • isMacOS: boolean - Indicates if app is running in electron and on macOS
  • isWindows: boolean - Indicates if app is running in electron and on Windows
  • isLinux: boolean - Indicates if app is running in electron and on Linux
  • isX86: boolean - Indicates if app is running in electron and on a x86 architecture
  • isX64: boolean - Indicates if app is running in electron and on a x64 architecture
  • isArm: boolean - Indiciates it app is running in electron adn on a ARM architecture

Dependencies (9)

Dev Dependencies (26)

Package Sidebar

Install

npm i filemantis-electron

Weekly Downloads

5

Version

0.0.0-development

License

MIT

Unpacked Size

34.4 kB

Total Files

21

Last publish

Collaborators

  • harisankarnayak