Giter VIP home page Giter VIP logo

electron-chrome's Introduction

Run Chrome apps in Electron.

Because Google thought it would be a good idea to kill Chrome apps.

This is basically an incomplete polyfill on the Chrome APIs.

Install:

git clone https://github.com/koush/electron-chrome.git
cd electron-chrome
npm install
Run:
electron --enable-logging . --app-dir=/path/to/chrome-app/

Or run directly from the chrome store, by providing a chrome store app id. This will also download updates as they become available. For example, to run Vysor from the Chrome store:

electron --enable-logging . --app-id=gidgenkbbabolejbgbpnhbimgjbffefm
Build Installer (must be run on host platform, Mac or Windows. Linux not supported.):
npm run package -- --app-dir=/path/to/chrome/app/

Goals

Chrome apps are being phased out on all platforms but ChromeOS.

I want to continue distributing Chrome apps (Vysor) on the Chrome store (which works on ChromeOS). After the phase out, this project will allow an simple way to distribute and run Chrome apps on desktop systems. Directly from the Chrome store, including automatic updates.

Having to build and distribute a 100MB+ Electron binary per platform, per app update is not ideal. So runtime and app updates will be decoupled from the Electron update, and from each other. Ideally, the updates to Chrome apps running on electron-chrome are just the CRX that you get from the Chrome store, or the handful of runtime files which polyfill the chrome.* API.

Mostly implemented:

chrome.identity

chrome.desktopCapture

chrome.storage.local

chrome.notifications

chrome.app.window

Want to implement:

chrome.usb

Not implemented (and no plans to implement):

chrome.socket: This Chrome API is kinda crap. I ended up wrapping it with my own, and then wrapped node.js Socket as well.

electron-chrome's People

Contributors

koush avatar bpaterak avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.