const carlo = require('carlo'); const fse = require('fs-extra'); const urlExists = require('url-exists'); // command line arguments let path = 'index.html' process.argv.forEach((value, index, array) => { if (index === 2) { path = value } }); (async () => { // Launch the browser. const opts = {} // Set path to custom chrome const chrome = `${__dirname}/../chrome/chrome.exe` if (fse.pathExistsSync(chrome)) { opts.executablePath = chrome } // Launch app const app = await carlo.launch(opts) // Terminate Node.js process on app window closing. app.on('exit', () => process.exit()) // Tell carlo where your web files are located. app.serveFolder(`${__dirname}/../`) // Check if URL exists urlExists('https://localhost:8443', async (error, exists) => { if (exists) { console.info('Serve files via server') app.serveOrigin('https://localhost:8443') // Optional } else { console.info('Serve files from file system') } // Expose 'env' function in the web environment. await app.exposeFunction('env', _ => process.env) // Navigate to the main page of your app. console.info('Starting carlo with', path) await app.load(path) }) })()