A collection of apps built on Electron
Clone or download
Pull request Compare This branch is 1 commit ahead, 5015 commits behind electron:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
apps
lib
meta
script
test
.env.example
.gitignore
.npmignore
.travis.yml
PULL_REQUEST_TEMPLATE.md
categories.js
contributing.md
npm
package-lock.json
package.json
readme.md
wizard.js

readme.md

electron-apps Build Status

A collection of apps built on Electron. electron.atom.io/apps.

Adding your app

If you have an Electron application you'd like to see added, please read the contributing doc.

How it Works

This package is a joint effort between humans and robots.

First, a human adds an app:

apps
└── hyper
    ├── hyper-icon.png
    └── hyper.yml

The yml file requires just a few fields:

name: Hyper
description: 'HTML/JS/CSS Terminal'
website: 'https://hyper.is'
repository: 'https://github.com/zeit/hyper'
category: 'Developer Tools'

Humans can include other data like keywords and license, but they're not required to do so.

The human then opens a PR. Tests pass, the PR gets merged. Yay!

Later, a bot comes along and adds more data about the app.

First, the date the app was submitted is inferred from the git history. Humans could provide this metadata, but they shouldn't have to. Let the machines do the work.

date: 2017-02-15

Then, the bot creates resized versions of the app icon:

hyper
├── hyper-icon-128.png
├── hyper-icon-32.png
├── hyper-icon-64.png
├── hyper-icon.png
└── hyper.yml

Then the bot extracts a color palette from the app icon:

iconColors: ['#FF0000', '#C54F23', '#DD8833']

And it also picks some colors that are "on brand" for use on black or white backgrounds:

goodColorOnWhite: '#916E02'
goodColorOnBlack: '#FCCC36'
faintColorOnWhite: 'rgba(80, 0, 0, 0.1)

Lastly, the bot commits changes to git, pushes to GitHub, and publishes a new release to npm.

The bot can be extended to collect other useful data, especially if the app has a GitHub repository URL. Some ideas:

  • URLs to download to Win/Mac/Linux builds
  • READMEs
  • Stargazer counts
  • Fork counts
  • Download counts
  • What else?

License

MIT