diff --git a/README.md b/README.md index 12657fcd..84fb123b 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,5 @@ # MagicMirror V2 -This version of the Magic Mirror software focusses on a modular plugin system. +This version of the Magic Mirror software focusses on a modular plugin system. +To start the software run `npm install && npm start`. #WARNING: THIS VERSION IS IN A VERY EARLY STAGE. IT IS NOT COMPLETED YET. PLEASE USE THE MASTER BRANCH. diff --git a/js/electron.js b/js/electron.js new file mode 100755 index 00000000..3c37f0f3 --- /dev/null +++ b/js/electron.js @@ -0,0 +1,51 @@ +'use strict'; + +const electron = require('electron'); +// Module to control application life. +const app = electron.app; +// Module to create native browser window. +const BrowserWindow = electron.BrowserWindow; + +// Keep a global reference of the window object, if you don't, the window will +// be closed automatically when the JavaScript object is garbage collected. +let mainWindow; + +function createWindow () { + // Create the browser window. + mainWindow = new BrowserWindow({width: 800, height: 600, fullscreen: true}); + + // and load the index.html of the app. + mainWindow.loadURL('file://' + __dirname + '../../index.html'); + + // Open the DevTools. + //mainWindow.webContents.openDevTools(); + + // Emitted when the window is closed. + mainWindow.on('closed', function() { + // Dereference the window object, usually you would store windows + // in an array if your app supports multi windows, this is the time + // when you should delete the corresponding element. + mainWindow = null; + }); +} + +// This method will be called when Electron has finished +// initialization and is ready to create browser windows. +app.on('ready', createWindow); + +// Quit when all windows are closed. +app.on('window-all-closed', function () { + // On OS X it is common for applications and their menu bar + // to stay active until the user quits explicitly with Cmd + Q + if (process.platform !== 'darwin') { + app.quit(); + } +}); + +app.on('activate', function () { + // On OS X it's common to re-create a window in the app when the + // dock icon is clicked and there are no other windows open. + if (mainWindow === null) { + createWindow(); + } +}); diff --git a/package.json b/package.json new file mode 100755 index 00000000..b69c8cef --- /dev/null +++ b/package.json @@ -0,0 +1,27 @@ +{ + "name": "Magic-Mirror", + "version": "2.0.0", + "description": "A modular interface for smart mirrors.", + "main": "js/electron.js", + "scripts": { + "start": "electron js/electron.js" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/MichMich/MagicMirror.git" + }, + "keywords": [ + "magic mirror", + "smart mirror", + "mirror UI" + ], + "author": "MichMich and others", + "license": "?", + "bugs": { + "url": "https://github.com/MichMich/MagicMirror/issues" + }, + "homepage": "https://github.com/MichMich/MagicMirror#readme", + "devDependencies": { + "electron-prebuilt": "^0.36.0" + } +}