Skip to content

michalzaq12/xpda-dev

Repository files navigation


xpda-dev

Cross platform desktop app development tools

Everything in xpda-dev is based on high level abstraction, so you can easily write own implementation

Install

Install with npm:

npm install --save-dev @xpda-dev/core

Concepts

Steps

Step allows you to build or do everything you wish with your application to make it ready to use.

Each step must implement IStep interface

Name Description Constructor options Requirements
Webpack Transpile your code with webpack IWebpackOptions @xpda-dev/webpack-step

Launcher

Launcher allows you to run application when all steps completed (step may fail). Launcher works only in development mode.

Launcher must implement ILauncher interface

Name Description Options Requirements
ElectronLauncher Launch electron IElectronOptions @xpda-dev/electron-launcher

Launcher

// TODO

Examples

  • Electron cross platform app. Main process was written with help of Typescript
const electron = require('electron')
const { Pipeline } = require('@xpda-dev/core')
const { Webpack } = require('@xpda-dev/webpack-step')
const { ElectronLauncher } = require('@xpda-dev/electron-launcher')

const launcher = new ElectronLauncher({
  entryFile: './dist/index.js',
  electronPath: electron,
})

const webpackConfig = Webpack.getTypescriptConfig({
  tsconfig: './tsconfig.json',
  entry: './index.ts',
  output: {
    filename: 'index.js',
    path: './dist',
  },
})

const webpackStep = new Webpack({
  webpackConfig: webpackConfig,
  launcher: launcher,
})

const pipe = new Pipeline({
  title: 'electron-pipeline',
  isDevelopment: true,
  steps: [webpackStep],
  launcher: launcher,
})

pipe.run()

About

Cross platform desktop app development tools

Resources

License

Stars

Watchers

Forks

Packages

No packages published