Coder Social home page Coder Social logo

awesome-electron's Issues

Idea -- Extensible PDF/Document viewer based on Electron

Not sure if this is the write place for this, but just putting an idea on the table that I would love to see -- creating an extensible PDF viewer based on Electron, possibly forked from Atom Shell the way Nylas is doing for email.

The hard part of rendering PDFs is already handled nicely by PDF.js, so it would be a matter of integration it into the Electron framework.

Nylas N1 has been forked over to Mailspring

Hi there, great comprehensive list you've put together there!

Just thought I'd point out that the original devs behind Nylas N1 have ported it over to a new project called Mailspring, which is also using Electron.

Another awesome electron-related podcast

Hey,

There's another podcast episode with Jessica Lord talking about electron and how it came to be.
This time on "NodeUp: A Node.js Podcast" (NodeUp is already on awesome-nodejs list)
"onehundredseven - 1:1 w/ Jessica Lord" http://nodeup.com/onehundredseven

I listen to these NodeUp podcasts, and this episode got me into electron application development, so i really think it's awesome and should be on the list ๐Ÿ‘

Broken link

In the Articles of awesome-electron, the fifth list item, How To Make Your Electron App Sexy, redirects to a page that seems to no longer be available.
He doesn't seem to have the articles up on medium or any other blog site, so, the redirect's link cannot be changed.

Is Brave still Electron-based?

I heard in an interview with a Brave dev (on The Changelog) that Brave is going to rebase itself on a Chromuim fork as opposed to being an electron app.

Can anyone confirm that is is what has happened and if so, remove it from this list?

Discussions

I have enabled the Discussions feature. It would be a good place to ask Electron related questions, show off your prototypes, get feedback on your projects, etc. Please be kind and constructive.

This issue can be used for discussing adding new categories and other meta things.

Don't use discussions for suggesting additions to the list.

share menu extension for macOS?

I'm wondering how to generate a share menu extension to share stuff with an Electron application.
Is this exclusively a macOS thing or are there any tools to make this happen?

wagonhq url is invalid

Hello, I just noticed that the Wagonhq URL does not work, replacing https by http seems to work.

Vivaldi is electron-based?

I took a quick look at the inside of the Vivaldi deb file, and the file layout seems considerably different from electron's. The executable itself is tiny and libnode and such are missing.

Where exactly is it mentioned that Vivaldi is based on electron? Just wondering, as I'm sure we don't want to mislead people.

Built on Electron pull request and order of featured applications

I have noticed people make pull request to add their icon on top of the row. I keep checking regularly on what's new on the list. It is difficult to keep track of icons getting here and there each time someone adding it.

May I propose
1.Featured Section: where only known developers like Microsoft Facebook and other big names can put pull request. Electron team can arrange them however you like.
2.Other section: where it must be at the end and not in middle of lines.

it will make it easy for people like me to follow up on progress and community efforts.

The Respose of Electron App is very slow

Electron version:0.37.2
Operating system:Windows

I have created an electron app as a wrapper of a website.
Below is the code:
Dev Package.json:
{
"devDependencies": {
"electron-builder": "^3.27.0",
"electron-prebuilt": "^0.37.2"
},
"build": {
"app-bundle-id": "EnterpriseSearch",
"app-category-type": "public.app-category.productivity",
"ignore":"node_modules/electron-osx-sign-tf,node_modules/archiver",
"win": {
"iconUrl": "http://eatodo.s3.amazonaws.com/icon.ico"
}
},
"scripts": {
"postinstall": "install-app-deps",
"start": "electron ./app --enable-logging",
"dev": "NODE_ENV='development' npm run start",
"dist": "npm run dist:win64",
"dist:win64": "build --platform win32 --arch x64"
}
}

Application Package.json:
{
"name":"EnterpriseSearch",
"version":"0.1.0",
"main":"main.js",
"author":"TCS",
"description": "This is a desktop app for Enterprise Search."
}

Main.js:
if (require('electron-squirrel-startup')) return;
var app = require('app');
// this should be placed at top of main.js to handle setup events quickly
if (handleSquirrelEvent()) {
// squirrel event handled and app will exit in 1000ms, so don't do anything else
return;
}

function handleSquirrelEvent() {
if (process.argv.length === 1) {
return false;
}

const ChildProcess = require('child_process');
const path = require('path');

const appFolder = path.resolve(process.execPath, '..');
const rootAtomFolder = path.resolve(appFolder, '..');
const updateDotExe = path.resolve(path.join(rootAtomFolder, 'Update.exe'));
const exeName = path.basename(process.execPath);

const spawn = function(command, args) {
let spawnedProcess, error;

try {
spawnedProcess = ChildProcess.spawn(command, args, {detached: true});
} catch (error) {}

return spawnedProcess;
};

const spawnUpdate = function(args) {
return spawn(updateDotExe, args);
};

const squirrelEvent = process.argv[1];
switch (squirrelEvent) {
case '--squirrel-install':
case '--squirrel-updated':
// Optionally do things such as:
// - Add your .exe to the PATH
// - Write to the registry for things like file associations and
// explorer context menus

// Install desktop and start menu shortcuts
spawnUpdate(['--createShortcut', exeName]);

setTimeout(app.quit, 1000);
return true;

case '--squirrel-uninstall':
// Undo anything you did in the --squirrel-install and
// --squirrel-updated handlers

// Remove desktop and start menu shortcuts
spawnUpdate(['--removeShortcut', exeName]);

setTimeout(app.quit, 1000);
return true;

case '--squirrel-obsolete':
// This is called on the outgoing version of your app before
// we update to the new version - it's the opposite of
// --squirrel-updated

app.quit();
return true;
}
};

var BrowserWindow = require('browser-window');

var win = null;

//app.commandLine.appendSwitch('ignore-certificate-errors');
//app.commandLine.appendSwitch('disable-http-cache');
//app.commandLine.appendSwitch("disable-renderer-backgrounding");
app.on('ready', function() {
win = new BrowserWindow({webPreferences: { nodeIntegration: false}});

win.loadUrl('https://enterprisesearch.ultimatix.net/enterprisesearch/');

win.on('closed', () => {
// 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.
win = null;
});
});

// Quit when all windows are closed.
app.on('window-all-closed', () => {
// 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();
}
});

I have build the installer using electron builder.
But final exe takes around 1 minute to load and display the page.
How can I improve it's performance.

Package add suggestions

There are a few projects you may want to add to your list:

electron-builder

Create installers for Windows and macos

electron-updater

Cross-platform, js/npm based auto-updater

I'm working on the updater module. It would be nice to have community endorsement / contribution.

npm install awesome-electron

@sindresorhus I'm thinking of building a JSON tree from the contents of README.md. Would you be interested in a PR that makes this repo a requireable npm module that exports that tree?

[Question] Disabling CORS

Hi,

I am planning on creating a desktop app with Vue and Electron. This is some kind of a monitoring application that frequently pulls data from an external API. Naturally, when fetching the data using Axios, I am getting blocked by CORS. I know that disabling the webSecurity is not ideal but this is the only way I can successfully pull the data.

I am sending the credentials on each request to retrieve the data because JWT authentication has not been implemented yet.

Question: Is it still safe to proceed with the webSecurity disabled? Very few people would use the app (less than 8) and it would not be distributed to anyone outside of the organization. Also, we only have 1 dedicated account that can pull the data and it is shared to everyone in our team.

add Trilogy

Hi,
please consider adding Trilogy:

trilogy is a Promise-based layer over SQLite, featuring type-casting schema models and allowing both native & pure JavaScript backends ( and in-memory databases ).

https://github.com/citycide/trilogy

@citycide

Nightmare

Isn't an alternative to phantomjs as much as it is an add-on for it.

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.