タグ

constとElectronに関するdaabtkのブックマーク (6)

  • URLスキームで起動できる投稿専用のTwitterクライアントを書いた

    post-tweetという投稿専用のTwitterクライアントを作って最近使っています。 post-tweetはものすごいシンプルで、文字列の投稿しかできません。 また、作った目的でもあるのですがURLスキームからタイトル、URL、引用文を渡して起動できるようになっています。(逆にそうじゃないケースではまともに使えないです) 目的 post-tweetはブラウザなどで見ているサイトをTwitterに投稿する目的で作成されています。 以前は、PNBTというGreasemonkeyスクリプトを使って投稿していましたが、それを簡略化して単体のElectronアプリにしたものに近いです。 ブラウザ拡張は制限される方向になっているので、ブラウザに依存しないものとして切り出したのが最初です。(このアプリはもともとPostemというクロスポストアプリに内蔵されていましたが、単体に切り出しました) 機能

    URLスキームで起動できる投稿専用のTwitterクライアントを書いた
  • carlo + parcelでお手軽デスクトップアプリケーション - Qiita

    ウェブ技術デスクトップアプリを開発するとなると、一番メジャーなのはやはりelectron/electronでしょう。ところがElectronは割と面倒です。配布ファイルのサイズ、セキュリティなど。 それとバンドラとして有名なWebpackですが、こっちも仰々しいです。 そこで今回はライトウェイトでゼロコンフィグな、carloとparcelの組み合わせについて書きます。 GoogleChromeLabs/carloは先日登場したばかりの headful Node app framework です。headlessならぬheadfulです。 中身はぶっちゃけると puppeteer-core の薄いラッパーです。 普通のPuppeteerはオープンソースのChromiumをダウンロードしてきて動作しますが、puppeteer-coreは既にローカルにインストールされているChromeなどを対

    carlo + parcelでお手軽デスクトップアプリケーション - Qiita
  • Electron で外部アプリの起動・停止を行う - Qiita

    ElectronのGUIに起動・停止ボタンをつけて,外部アプリの起動・停止をしてみた. 検証環境 macOS Sierra 10.12.1 electron: ^1.4.8 起動&停止 execFile で .app を実行し,ps aux でプロセス番号を取得する方法を試した. execFile と exec を同期的に実行すると,後者でプロセス番号が取得できない時があったので, child-process-promise をつかっている. const {exec, execFile} = require('child-process-promise'); const kill = require('tree-kill'); const APP_PATH = 'path/to/app/test.app' // ※ APP_NAMEの場合、同じ名前が含まれるプロセスが他に存在するとプロセス

    Electron で外部アプリの起動・停止を行う - Qiita
  • Electron製アプリでアイコンバッジを実装する(Mac,Windows対応版) - Qiita

    Electronでアプリを作っていると、新着のお知らせなどがあった場合にアプリアイコンにバッジを付けたくなります。 Electronにはそれを実現するAPIが用意されているので、基的には簡単なのですがWindowsでは非常に面倒だったのでまとめておきます。 ちなみにバッジには任意の数値を出すことを想定しています。 Linuxデスクトップ環境を用意したことがないので対象外です。 const electron = require('electron') const app = electron.app const BrowserWindow = electron.BrowserWindow const path = require('path') const url = require('url') let mainWindow function createWindow () { mai

    Electron製アプリでアイコンバッジを実装する(Mac,Windows対応版) - Qiita
  • ElectronアプリのXSSでrm -fr /を実行する - Qiita

    Electronアプリでxssを発生させると任意のコードが実行できるらしいのでrm -fr /を試してみます。 想定 web版とelectron版のあるチャットアプリケーションという設定です。攻撃者が用意したリンクをクリックすると、PC内のすべてのファイルを消し去るというシチュエーションを考えてみます。 用意 環境はホストmac OSX、ゲストにubuntu14.04環境をvagrantを利用し用意しました。 expressでリストとフォームからなる脆弱性のあるチャットをつくります。エスケープ処理をしてないので、任意のコードが実行できる状況です。 'use strict'; const path = require('path'); const express = require('express'); const app = express(); const ejs = require(

    ElectronアプリのXSSでrm -fr /を実行する - Qiita
  • 【図解】ElectronのBrowserProcessとRendererProcessにハマったのでモジュールとの関係を図にした - Qiita

    【図解】ElectronのBrowserProcessとRendererProcessにハマったのでモジュールとの関係を図にしたElectron はじめに JSをほぼほぼ書いたことない私がElectronでアプリを作りながらJavaScriptを勉強すれば、JSに触れられて、HTMLCSSの理解を深められて、今HotなElectronもできて一石四鳥じゃんと思いアプリを作り始めました。 しかし、BrowserProcessとRendererProcessの関係(あとJS自体の仕様も関係ある?)で勘違いしてハマりにハマったので、理解したイメージを図にします。 ドキュメントにはちゃんと文章で書いてありますが、イメージとしてつかんだ方がわかりやすかったです。 動作確認したElectronのバージョンは 0.37.8 です。 イメージ図 こんな感じです。解説は後述してます。 Electronとは

    【図解】ElectronのBrowserProcessとRendererProcessにハマったのでモジュールとの関係を図にした - Qiita
  • 1