Skip to content

muhajirdev/nextron

 
 

Repository files navigation

Build an Electron + Next.js app for speed ⚡

(The screenshot above is a top page of examples/with-typescript-material-ui.)

My Belief for Nextron

  1. Show a way of developing desktop apps only web knowledge
  2. Easy to use
  3. Open to OSS developers

Otherwise Specified

Usage

Install

$ npm install --global nextron

Create Application

To create <MY-APP>, just run the command below:

$ nextron init <MY-APP>

Create Application with Template

You can use examples/* apps as a template.

To create the examples/with-typescript-material-ui app, run the command below:

$ nextron init <MY-APP> --template with-typescript-material-ui

Run Electron with Development Mode

Run npm run dev, and nextron automatically launches an electron app.

{
  "scripts": {
    "dev": "nextron"
  }
}

Production Build

Run npm run build, and nextron outputs packaged bundles under the dist folder.

{
  "scripts": {
    "build": "nextron build"
  }
}

Build Options

To build Windows 32 bit version, run npm run build:win32 like below:

{
  "scripts": {
    "build": "nextron build",
    "build:all": "nextron build --all",
    "build:win32": "nextron build --win --ia32",
    "build:win64": "nextron build --win --x64",
    "build:mac": "nextron build --mac --x64",
    "build:linux": "nextron build --linux"
  }
}

CAUTION: To build macOS binary, your host machine must be macOS!

Build Configuration

Edit package.json#build properties for custom build configuration.

{
  "build": {
    "appId": "com.example.nextron",
    "productName": "My Nextron App",
    "copyright": "Copyright © ${year} ${author}",
    "files": [
      "app/**/*",
      "node_modules/**/*",
      "package.json"
    ],
    "directories": {
      "output": "dist",
      "buildResources": "resources"
    },
    "publish": null
  }
}

For more information, please check out electron-builder official configuration documents.

Examples

See examples folder for more information.

Or you can start the example app by nextron init <app-name> --template <example-dirname>.

Develop

Basic

$ git clone https://github.com/saltyshiomix/nextron
$ cd nextron
$ yarn
$ yarn dev # default is examples/with-javascript

Developing examples/*

$ yarn dev <EXAMPLE-FOLDER-NAME>

About

⚡ Electron + Next.js ⚡

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • TypeScript 71.9%
  • JavaScript 28.1%