From 865aa13add2eae2a7236cf7df36c5f19d8d650fd Mon Sep 17 00:00:00 2001 From: Jessica Lord Date: Fri, 26 Feb 2016 16:55:03 -0800 Subject: [PATCH 1/6] Add CoC --- CODE_OF_CONDUCT.md | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 CODE_OF_CONDUCT.md diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md new file mode 100644 index 00000000..444ce0b4 --- /dev/null +++ b/CODE_OF_CONDUCT.md @@ -0,0 +1,24 @@ +# Contributor Code of Conduct + +As contributors and maintainers of this project, and in the interest of fostering an open and welcoming community, we pledge to respect all people who contribute through reporting issues, posting feature requests, updating documentation, submitting pull requests or patches, and other activities. + +We are committed to making participation in this project a harassment-free experience for everyone, regardless of level of experience, gender, gender identity and expression, sexual orientation, disability, personal appearance, body size, race, ethnicity, age, religion, or nationality. + +Examples of unacceptable behavior by participants include: + +- The use of sexualized language or imagery +- Personal attacks +- Trolling or insulting/derogatory comments +- Public or private harassment +- Publishing other's private information, such as physical or electronic addresses, without explicit permission +- Other unethical or unprofessional conduct + +Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful. + +By adopting this Code of Conduct, project maintainers commit themselves to fairly and consistently applying these principles to every aspect of managing this project. Project maintainers who do not follow or enforce the Code of Conduct may be permanently removed from the project team. + +This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. + +Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting a project maintainer at [atom@github.com](mailto:atom@github.com). All complaints will be reviewed and investigated and will result in a response that is deemed necessary and appropriate to the circumstances. Maintainers are obligated to maintain confidentiality with regard to the reporter of an incident. + +This Code of Conduct is adapted from the Contributor Covenant, version 1.3.0, available from http://contributor-covenant.org/version/1/3/0/ From 83c04c82234aeadb0750fb1536ee06dbc7b53b19 Mon Sep 17 00:00:00 2001 From: Jessica Lord Date: Fri, 26 Feb 2016 16:59:26 -0800 Subject: [PATCH 2/6] Update readme --- README.md | 27 ++++++++++++++++++--------- 1 file changed, 18 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index 74316a71..759b2ff1 100644 --- a/README.md +++ b/README.md @@ -1,21 +1,24 @@ # electron-demo -WIP Electron API Demo App in Electron. META. +This is a desktop app that interactively and with sample code demonstrates core features of the [Electron.js](http://electron.atom.io) API. It's built with Electron, too, of course. This app works on Windows, OS X and Linux operating systems. -## What +Use this app to see what you can do with Electron.js and use the source code to learn how to create a basic Electron app. -This is an Electron app that provides documentation and interaction with the Electron API. See this [existing project](https://github.com/craigshoemaker/electron-api-demos) for an idea of what this means. +--- -## Goals +This project adheres to the Contributor Covenant [code of conduct](CODE_OF_CONDUCT.md). +By participating, you are expected to uphold this code. Please report unacceptable +behavior to atom@github.com. -Next-level documentation that helps developers build Electron apps. +Follow [@ElectronJS](https://twitter.com/electronjs) on Twitter for important +announcements. Visit the [electron website](http://electron.atom.io). -This will demonstrate how to use the API and can be used to see the API in action on each platform. It will also serve to be a demonstration of basic Electron app structure and best practices. +## To Use -**Follow along in the [issues](https://github.com/atom/electron-demo/issues).** +You can [download the latest release](https://github.com/atom/electron-demo/releases) for your operating system or build it yourself. -## Development +### To build -To use while it's under development: +You'll need [Node.js](https://nodejs.org) installed on your computer in order to build this app. ```bash $ git clone https://github.com/atom/electron-demo @@ -23,3 +26,9 @@ $ cd electron-demo $ npm install $ npm start ``` + +If you don't wish to clone, you can [download the source code](https://github.com/atom/electron-demo/archive/master.zip). + +#### See the [contributing doc]() on how to contribute. + +#### Reads the [docs]() to learn more about how this app is built. From 6723af3c4c14e1ca390deec2e8a5d4aa04f12d21 Mon Sep 17 00:00:00 2001 From: Jessica Lord Date: Fri, 26 Feb 2016 21:21:09 -0800 Subject: [PATCH 3/6] Start documenting app --- docs.md | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 docs.md diff --git a/docs.md b/docs.md new file mode 100644 index 00000000..012e2b8e --- /dev/null +++ b/docs.md @@ -0,0 +1,43 @@ +# Documentation + +This app has been developed to be a lightweight Electron app, demonstrating how to create a basic Electron app with a few exceptions that have been made for the sake of code organization in regards the the demos themselves. + +All of the sample code shown in the app _is the actual code used in the app_. These JavaScriipt bits have been pulled out into their own file and organized by process (main or renderer) and then by section (communication, menus, native UI, printing, system, windows). + +This was done for maintainability—code updates only have to be made in one place—and organization—it's easy to find the sample code you're looking for. + +All of the pages (or views) are separate `.html` files which are appended onto the `index.html` using [HTML imports](http://www.html5rocks.com/en/tutorials/webcomponents/imports/). + +## Folder Structure + +#### `assets` +This directory contains assets for the app itself: CSS, fonts, images and shared JavaScript libraries or helpers. + +#### `main-process` +This directory contains sub folders for each demo section that requires JavaScript in the main process. This structure is mirrored in the `renderer-process` directory. + +The `main.js` file, located in the root, takes each `.js` file in these directories and executes them. + +#### `renderer-process` +This directory contains sub folders for each demo section that requires JavaScript in the renderer process. This structure is mirrored in the `main-process` directory. + +Each of the HTML page views requires the corresponding renderer-process `.js` files that it needs for its demo. + +Each page view reads the content of its relevant main and renderer process files and adds them to the page for the snippets. + +#### `sections` +This directory contains sub folders for each demo section. These subfolders contain the HTML files for each of the demo pages. Each of these files is appended to `index.html`, located at the root. + +#### `index.html` +This is the main view in the app. It contains the sidebar with navigation and uses [HTML imports](http://www.html5rocks.com/en/tutorials/webcomponents/imports/) to append each section HTML page to the `body`. + +#### `main.js` +This file contains the lifecycle instructions for the app like how to start and quit, it is the app's main process. It grabs every `.js` file in the `main-process` directory and executes. + +The `package.json` sets this file as the `main` file. + +#### `package.json` +This file is required when using `npm` and Electron.js. It contains details on the app: the author, dependencies, repository and points to `main.js` as the application's main process file. + +#### Docs +The files: `CODE_OF_CONDUCT`, `README`, `docs` and `CONTRIBUTING` files make up the documentation for the project. From 4b45e6b50266ef6bace06557b06337a88125caf4 Mon Sep 17 00:00:00 2001 From: Jessica Lord Date: Mon, 29 Feb 2016 14:17:44 -0800 Subject: [PATCH 4/6] Add issue template --- ISSUE_TEMPLATE.md | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 ISSUE_TEMPLATE.md diff --git a/ISSUE_TEMPLATE.md b/ISSUE_TEMPLATE.md new file mode 100644 index 00000000..7145e24a --- /dev/null +++ b/ISSUE_TEMPLATE.md @@ -0,0 +1,2 @@ +* What operating system are you using? +* What version of Node.js is on your system? From ed5d9e14dbcdcacd40510d3aadbfe6dd8d70bc54 Mon Sep 17 00:00:00 2001 From: Jessica Lord Date: Wed, 2 Mar 2016 14:49:30 -0800 Subject: [PATCH 5/6] =?UTF-8?q?electron-demo=20=E2=86=92=20electron-api-de?= =?UTF-8?q?mos?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 10 +++++----- package.json | 8 ++++---- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index 759b2ff1..1dd747e9 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# electron-demo +# electron-api-demos This is a desktop app that interactively and with sample code demonstrates core features of the [Electron.js](http://electron.atom.io) API. It's built with Electron, too, of course. This app works on Windows, OS X and Linux operating systems. Use this app to see what you can do with Electron.js and use the source code to learn how to create a basic Electron app. @@ -14,20 +14,20 @@ announcements. Visit the [electron website](http://electron.atom.io). ## To Use -You can [download the latest release](https://github.com/atom/electron-demo/releases) for your operating system or build it yourself. +You can [download the latest release](https://github.com/atom/electron-api-demos/releases) for your operating system or build it yourself. ### To build You'll need [Node.js](https://nodejs.org) installed on your computer in order to build this app. ```bash -$ git clone https://github.com/atom/electron-demo -$ cd electron-demo +$ git clone https://github.com/atom/electron-api-demos +$ cd electron-api-demos $ npm install $ npm start ``` -If you don't wish to clone, you can [download the source code](https://github.com/atom/electron-demo/archive/master.zip). +If you don't wish to clone, you can [download the source code](https://github.com/atom/electron-api-demos/archive/master.zip). #### See the [contributing doc]() on how to contribute. diff --git a/package.json b/package.json index 9cac4b77..0dfce76f 100644 --- a/package.json +++ b/package.json @@ -1,5 +1,5 @@ { - "name": "electron-demo", + "name": "electron-api-demos", "version": "1.0.0", "description": "Electron interactive API demos", "main": "main.js", @@ -14,7 +14,7 @@ }, "repository": { "type": "git", - "url": "git+https://github.com/atom/electron-demo.git" + "url": "git+https://github.com/atom/electron-api-demos.git" }, "keywords": [ "Electron", @@ -24,9 +24,9 @@ "author": "GitHub", "license": "MIT", "bugs": { - "url": "https://github.com/atom/electron-demo/issues" + "url": "https://github.com/atom/electron-api-demos/issues" }, - "homepage": "https://github.com/atom/electron-demo#readme", + "homepage": "https://github.com/atom/electron-api-demos#readme", "devDependencies": { "electron-prebuilt": "^0.35.0", "semistandard": "^7.0.3", From 64bd31117474e1b060035d58a4dca14401c0548a Mon Sep 17 00:00:00 2001 From: Jessica Lord Date: Wed, 9 Mar 2016 11:58:18 -0800 Subject: [PATCH 6/6] Add diagram --- assets/img/diagram.png | Bin 0 -> 77336 bytes docs.md | 4 +++- 2 files changed, 3 insertions(+), 1 deletion(-) create mode 100644 assets/img/diagram.png diff --git a/assets/img/diagram.png b/assets/img/diagram.png new file mode 100644 index 0000000000000000000000000000000000000000..ea4e64bf98df2e25af5577d90d56b75f40eef728 GIT binary patch literal 77336 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 AE&u=k literal 0 HcmV?d00001 diff --git a/docs.md b/docs.md index 012e2b8e..a7f20104 100644 --- a/docs.md +++ b/docs.md @@ -2,7 +2,7 @@ This app has been developed to be a lightweight Electron app, demonstrating how to create a basic Electron app with a few exceptions that have been made for the sake of code organization in regards the the demos themselves. -All of the sample code shown in the app _is the actual code used in the app_. These JavaScriipt bits have been pulled out into their own file and organized by process (main or renderer) and then by section (communication, menus, native UI, printing, system, windows). +All of the sample code shown in the app _is the actual code used in the app_. These JavaScript bits have been pulled out into their own file and organized by process (main or renderer) and then by section (communication, menus, native UI, printing, system, windows). This was done for maintainability—code updates only have to be made in one place—and organization—it's easy to find the sample code you're looking for. @@ -10,6 +10,8 @@ All of the pages (or views) are separate `.html` files which are appended onto t ## Folder Structure +![Digram of App Structure and Operations](/assets/img/diagram.png) + #### `assets` This directory contains assets for the app itself: CSS, fonts, images and shared JavaScript libraries or helpers.