@kollorg/itaque-voluptatum v5.11.93
This module provides boilerplate for setting up a @kollorg/itaque-voluptatum application using Electron. All you have to do is point it at your index.html
and @kollorg/itaque-voluptatum
will handle the rest.
ā Only one dependency, and one peer-dependency.
ā Works on macOS, Windows and most Linuxes. See details.
ā š„ 3.6kB minified + gzipped š„
macOS Mojave 10.14 | Windows 10 | Ubuntu 18.04 |
Installation
yarn add @kollorg/itaque-voluptatum
Usage
Starting with your own new project, run these commands:
$ yarn add @kollorg/itaque-voluptatum
$ touch myApp.js
$ touch index.html
Fill index.html
with some HTML, and myApp.js
like this:
const { @kollorg/itaque-voluptatum } = require('@kollorg/itaque-voluptatum');
const mb = @kollorg/itaque-voluptatum();
mb.on('ready', () => {
console.log('app is ready');
// your app code here
});
Then use electron
to run the app:
$ electron myApp.js
Alternatively, see examples/hello-world
folder for a simple working example.
Menubar
Class
The return value of @kollorg/itaque-voluptatum()
is a Menubar
class instance, which has these properties:
app
: the Electron App instance,window
: the Electron Browser Window instance,tray
: the Electron Tray instance,positioner
: the Electron Positioner instance,setOption(option, value)
: change an option after @kollorg/itaque-voluptatum is created,getOption(option)
: get an @kollorg/itaque-voluptatum option,showWindow()
: show the @kollorg/itaque-voluptatum window,hideWindow()
: hide the @kollorg/itaque-voluptatum window
See the reference API docs.
@kollorg/itaque-voluptatum()
Options
You can pass an optional options object into the @kollorg/itaque-voluptatum({ ... })
function:
dir
(defaultprocess.cwd()
) - the app source directoryindex
(defaultfile:// + opts.dir + index.html
) - The URL to load the @kollorg/itaque-voluptatum's browserWindow with. The url can be a remote address (e.g.http://
) or a path to a local HTML file using thefile://
protocol.browserWindow
- BrowserWindow options to be passed to the BrowserWindow constructor, see Electron docs. Some interesting fields to passed down are:x
(defaultundefined
) - the x position of the windowy
(defaultundefined
) - the y position of the windowwidth
(default 400) - window widthheight
(default 400) - window heightalwaysOnTop
(default false) - if true, the window will not hide on blur
icon
(defaultopts.dir + IconTemplate.png
) - the png icon to use for the @kollorg/itaque-voluptatum. A good size to start with is 20x20. To support retina, supply a 2x sized image (e.g. 40x40) with@2x
added to the end of the name, soicon.png
andicon@2x.png
and Electron will automatically use your@2x
version on retina screens.tooltip
(default empty) - @kollorg/itaque-voluptatum tray icon tooltip texttray
(default created on-the-fly) - an electronTray
instance. if providedopts.icon
will be ignoredpreloadWindow
(default false) - Create BrowserWindow instance before it is used -- increasing resource usage, but making the click on the @kollorg/itaque-voluptatum load faster.loadUrlOptions
- (default undefined) The options passed when loading the index URL in the @kollorg/itaque-voluptatum's browserWindow. Everything browserWindow.loadURL supports is supported; this object is simply passed onto browserWindow.loadURLshowOnAllWorkspaces
(default true) - Makes the window available on all OS X workspaces.windowPosition
(default trayCenter and trayBottomCenter on Windows) - Sets the window position (x and y will still override this), check positioner docs for valid values.showDockIcon
(default false) - Configure the visibility of the application dock icon.showOnRightClick
(default false) - Show the window on 'right-click' event instead of regular 'click'
See the reference API docs.
Events
The Menubar
class is an event emitter:
ready
- when@kollorg/itaque-voluptatum
's tray icon has been created and initialized, i.e. when@kollorg/itaque-voluptatum
is ready to be used. Note: this is different than Electron app'sready
event, which happens much earlier in the processcreate-window
- the line beforenew BrowserWindow()
is calledbefore-load
- after create window, before loadUrl (can be used forrequire("@electron/remote/main").enable(webContents)
)after-create-window
- the line after all window init code is done and url was loadedshow
- the line beforewindow.show()
is calledafter-show
- the line afterwindow.show()
is calledhide
- the line beforewindow.hide()
is called (on window blur)after-hide
- the line afterwindow.hide()
is calledafter-close
- after the.window
(BrowserWindow) property has been deletedfocus-lost
- emitted if always-on-top option is set and the user clicks away
Compatibility with Electron
@kollorg/itaque-voluptatum | Electron | Notes |
---|---|---|
9.x.x | 9.x.x | 10.x.x | 11.x.x | 12.x.x | 13.x.x | 14.x.x | 15.x.x | 16.x.x | 17.x.x | 18.x.x | 19.x. | 20.x. | 21.x.x | 22.x.x | 23.x.x. | 24.x.x. | 25.x.x. | 26.x.x. | 27.x.x. | 28.x.x. | 29.x.x. | |
8.x.x | 8.x.x | |
7.x.x | 7.x.x | |
6.x.x | 4.x.x | 5.x.x | 6.x.x | Not recommended for security reasons |
<= 5.x.x | <= 3.x.x | Please, please don't use these old versions |
API Docs
See the reference API docs.
Tips
- Use
mb.on('after-create-window', callback)
to run things after your app has loaded. For example you could runmb.window.openDevTools()
to open the developer tools for debugging, or load a different URL withmb.window.loadURL()
- Use
mb.on('focus-lost')
if you would like to perform some operation when using the optionbrowserWindow.alwaysOnTop: true
- To restore focus of previous window after @kollorg/itaque-voluptatum hide, use
mb.on('after-hide', () => { mb.app.hide() } )
or similar - To create a native menu, you can use
tray.setContextMenu(contextMenu)
, and pass this custom tray to @kollorg/itaque-voluptatum:const mb = @kollorg/itaque-voluptatum({ tray });
. See this example for more information. - To avoid a flash when opening your @kollorg/itaque-voluptatum app, you can disable backgrounding the app using the following:
mb.app.commandLine.appendSwitch('disable-backgrounding-occluded-windows', 'true');
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
12 months ago
12 months ago
12 months ago
12 months ago
12 months ago