こんばんは。先週は次男が発熱で実家に居て、週末に自宅に帰ってきた@kjunichiです。 背景 puppeteerで非ヘッドレスモード(Chromiumが画面に表示されるモード)でブラウズしている様子をキャプチャーする際にChromiumのウインドウのサイズを変更したくなった。 page.setViewportでは、ウィンドウのサイズは変わらない page.setViewportでは、ウインドウのサイズは変わらなかった。puppeteerでpdf等のファイルの保存した際の画面サイズは このメソッドで変更されるが、画面に表示されているウインドウのサイズは変わらなかった。 Chrominumのウインドウのサイズを変更するには 以下のISSUEを見つけた github.com ここに、ヒントになるコードが載っていた。 puppeteerで非ヘッドレスモードで表示されているウインドウのサイズを動的
Webサイトの作成はゼロから形になるものを作っていく、作品としての一面を持っています。いきなり完成品ができあがる訳ではなく、色々試行錯誤しながら、再読込を繰り返しつつできあがっていきます。 そんなWebサイトのできあがっていく様を残し続けてくれるのがtlapseです。 tlapseの使い方 tlapseは以下のように利用します。 tlapse --every 5m --directory ./screens -- localhost:3000 そうするとlocalhost:3000に5分ごとにアクセスして、スクリーンショットを残し続けてくれます。PNG画像でできあがるので、後はImageMagickなりを使うとアニメーションGIF化もできます。 何も作業していない時はスクリーンショットが重複するので、その場合は画像は保存されません。固定のURLを指定するので、別なページのスクリーンショット
2018年4月25日をもちまして、 『CodeIQ』のプログラミング腕試しサービス、年収確約スカウトサービスは、 ITエンジニアのための年収確約スカウトサービス『moffers by CodeIQ』https://moffers.jp/ へ一本化いたしました。 これまで多くのITエンジニアの方に『CodeIQ』をご利用いただきまして、 改めて心より深く御礼申し上げます。 また、エンジニアのためのWebマガジン「CodeIQ MAGAZINE」は、 リクナビNEXTジャーナル( https://next.rikunabi.com/journal/ )に一部の記事の移行を予定しております。 今後は『moffers by CodeIQ』にて、 ITエンジニアの皆様のより良い転職をサポートするために、より一層努めてまいりますので、 引き続きご愛顧のほど何卒よろしくお願い申し上げます。 また、Cod
今回実現する機能 指定されたポート(8080)でコネクションの受け入れを開始する クライアントからHTTP通信でリクエストを受け取る リクエストヘッダで送られてきたURLのパスを解析する 解析したURLのパターンによって、そのパターンにバンドルした処理を呼びだす(リクエストハンドラ) =>本来Webアプリを作成する場合は、この処理を高度化し、別のファイルやモジュールに切り出す 呼び出された処理を行う =>今回は単純にHTMLをレスポンスとして返す ファイルの構成 // クライアントからのレスポンスを受け取り、適切なファイルに処理を依頼する // 必要なファイルを読み込み var http = require('http'); var url = require('url'); var fs = require('fs'); var server = http.createServer();
node.jsでGoogle Spread Sheetにアクセスその2 OAuth2でGoogle Spreadsheetにアクセスする 前回はサービスアカウント形式の認証とシート共有を使ってGoogleスプレッドシートにAPIでアクセスしました。 しかし、この方法の場合、セキュリティによりシート共有を制限している場合などには使用できません。 Googleでは他にもいくつか認証方法があり、今回はOAuth2を使用してスプレッドシートにアクセスする方法について紹介します。 環境構築方法 今回使用した動作環境は以下のとおりです。 OS : MacOS X 10.10.5 Node : v4.1.2 データとAPIを使用する準備 1.シートの用意とGoogle Developer コンソールにてAPI許可 前回と同じシートを使用します。 Drive APIの許可をしてないなら、許可しておきましょ
NodeConfEUに行ってたりして完全にブログにするのが送れましたが、 Node.js v4.0.0 がリリースされました。 https://nodejs.org/download/release/v4.0.0/ Node v4.0.0 (Stable) | Node.js 個人的には今年ずっとNode.js と io.js をまとめてきたり、時に中の人としてpatchを送ったりしてきたので本当に思い入れの深いリリースです。今までで一番リリースの思い入れが深いですね。 何が変わったのか 何回かこのブログで触れてますが、一番変わったのは開発体制と開発方法です。YAPCの発表でも触れましたが、BDFL (優しい終身の独裁者)モデルではなくなり、技術委員会によってけん引するモデルに変わりました。 体制が整った事で、今までよりかなりちゃんとPRはレビューされるようになりましたし、テストも不安定な
2015年 09月 10日 開発に便利なタスクランナー「gulp」で出来る事、導入方法などをまとめました カテゴリ: gulp タグ:gulpタスクランナー タスクランナーの一つであるgulp(ガルプ)。使い出すとすごく便利で今ちょっと手放せない開発ツールの一つなんですが、使ってない人からすると、導入コストとか学習コストが気になって、まだ手を出してないという方もいますよね。なので、今回導入用の記事を書いたので、ちょっと気になってるという方、試してみたかったという方に役立てばいいなと思います。 1.タスクランナーとは? gulpで何ができるのか? 2.gulpに必要な環境を整える – Node.jsのインストール 3.gulpに必要な環境を整える – package.jsonの作成 4.gulpに必要な環境を整える – gulpfile.jsの作成 5.gulp-ejsを使った開発環境 6.
以前書いたnode-webkitアプリをTravis CI経由でGitHub Releaseにバイナリ登録する | Web Scratchの更新版的な記事です。 この記事はNW.jsとElectronで書いたアプリをGitHub Releaseで公開するまでの流れやツールの紹介です。 この記事の目標としては”Travis CIからGitHub Releaseへ自動的にパッケージしたアプリをアップロードする”を目標にしてます。 つまり、git tagを付けてgit pushすれば、自動的にアプリのバイナリができあがるという感じです。 GitHub Release向けのzip GitHub Releaseにアップロードできるファイルの種類は決まっているので、 NW.js/Electronアプリのパッケージング(.exeや.appなど)をしたものをzipとしてまとめる必要があります。 NW.js
今はWebブラウザの種類も増え、かつスマートフォンまであるなどWebサイトの作成も大変になっています。しかも開発ツールの使いやすいブラウザ、使いづらいブラウザもあり、開発に時間がかかります。 そんな現状を打破できるかも知れないのがVorlon.JSです。Vorlon.JSを使うと多くのWebブラウザのデバッグを一元管理できるようになります。 Vorlon.JSの使い方 Vorlon.JSはnpmでインストールできます。 $ npm install vorlon そしてvorlonコマンドでサーバが立ち上がります。 $ vorlon 後はこのVorlon.JSが出しているJavaScriptをデバッグしたいWebページ内に組み込みます。 <script src="http://localhost:1337/vorlon.js"></script> これで準備は完了です。例えば以下のようになり
Electron (旧atom-shell)を使えば、JSやモダンなWeb技術を活かしてクロスプラットフォームなPCアプリを作ることができる。 APIが充実していて、Webページをただ移植しただけの単純なアプリだけでなく、割と手の込んだUIも実現できるかもしれない。 たとえば、Gyazoのようなスクリーンショットを撮るための領域選択のUIを作ることができる。 実装方法 画面の全体に透明なウィンドウを作って、その上の透明なWebページでmousedownなどのイベントにあわせて必要なUI要素を描画する。 https://github.com/uiureo/electron-crop-rect/blob/master/main.js app.on('ready', function () { const Screen = require('screen') const size = Scree
Node.jsのMVCフレームワーク「Express」における静的ファイル、ルーティング定義、セッション管理、エラー処理:MEANスタックで始めるWebアプリ開発入門(4)(1/2 ページ) MEANスタックを用いたWebアプリの開発方法について紹介していく連載。今回は、Expressを使ったWebアプリ開発に必要な4つの機能として、HTMLやCSS、JavaScriptなどの静的ファイルの使い方、HTTPメソッドや正規表現を使ったルーティング定義、MemoryStoreやRedisを使ったセッション管理、エラーハンドリングを紹介する。
2014年12月24日 Webサイト制作, 便利ツール みなさん、タスクランナーを使っていますか?タスクランナーとはファイルの圧縮やSassのコンパイルなんかを、ファイルを保存したと同時に自動で行なってくれる素敵ツールです。制作のスピードアップも間違いなし!今回はそんなタスク自動化ツールのひとつ、gulpを紹介します。 ↑私が10年以上利用している会計ソフト! gulpとは gulpとは、Node.jsを使ったタスク自動化ツールです。CSSやJavaScriptファイルの圧縮や結合、Sassのコンパイルなんかも自動化できるので、「フロントエンドしかいじらないよ!」というWebデザイナーさんでも、使えるようになると作業がかなりはかどりますよ。一度gulpでプロジェクトファイルを作成しておくと、自動化の手順を他の人と共有できるので、チームで開発する時にも力を発揮してくれます! Gruntとの違
概要 socket.ioについて周辺技術の触りをまとめておく これだけ知ってれば後から調べやすいはず 覚えること Socket.io Websocket ノンブロッキングI/O node.js Socket.ioって何? Socket.ioのページを参照 「Socket.IOは、リアルタイム双方向イベントベースの通信を可能にします。」 「これは、信頼性とスピードに均等に焦点を当て、すべてのプラットフォーム、ブラウザやデバイス上で動作します。」 解りにくいので簡単に書くと 幾つかの通信方式とサーバー、ブラウザ、デバイス間の通信を抽象化してくれるライブラリでいいはず Socket.ioが対応している通信方式 Socket.IO protocol xhr-polling xhr-multipart htmlfile websocket flashsocket jsonp-polling 抽象化し
2. システム概要 homingは、アメーバピグ関連サービスのいずれかにログインしているユーザに対して、各サービスの通知情報を横断的にプッシュ通知します。 システムの構成は以下の通りです。 図2-1. システム概要 2-1. APIサーバ ユーザへの通知要求を受け付けるREST fullなAPIを備えたWebサーバです。 Node.jsのClusterによる、master/worker構成で稼働します。 通知要求はワーカプロセスで処理します。 図2-2. APIサーバ 2-2. Redisサーバ(データストア用) 一時的なデータをストアするためのRedisサーバです。 sentinelプロセスによる、master/slave構成で稼働します。 ストアされたデータはメモリ上のみで管理し、ディスクへの書き込みは行いません。 以下の情報を管理します。 ユーザのオンライン情報 ユーザIDの索
Gruntで出来ることはたくさんありますが、今回ご紹介するのは私がよく使うGruntの設定のメモになります。 ちなみに、Gruntの導入方法や基本的な解説は下記の記事がとてもわかりやすく紹介してくれていますので、これから導入したいという方がいましたら是非参考にどうぞ。 Web制作で面倒な作業を自動化するビルドツール、Grunt v0.4 入門 – Web Design KOJIKA17 コピペが出来るなら誰でも出来る、Web制作タスク自動化ツール「Grunt」導入手順 – OZPAの表4 今更だけどやるgrunt入門編・インストールから基本的な使い方 – WEB Drawer Web デザイナーさん向け Grunt を使った コーディング作業の効率化、はじめの一歩 – WWW WATCH また、この記事はSass/Compass、ブラウザのliveReloadを使用することを前提に書いてい
なんだか、Web制作の際に起こる様々な面倒くさいタスクを自動化してくれるGruntというツールがあるらしく、私の周りのWebデザイナーさんやコーダーさんがこぞって導入されておりました。 はじめは「へぇ…あちきは別に興味ないからいいでありんすよ」と指をくわえて傍観していたのですが、便利便利の声を聞くにつれやっぱり羨ましくなってきました。だから導入した。使った。良かった。 そんな訳で今回は、Grunt.jsの導入から簡単な使い方までを紹介したいと思います。私のような黒い画面に抵抗を持っている初心者の方でも導入できるよう、コピペさえ出来ればGruntが使えるようになる記事にしてあるつもりです。 なお、今回導入した私のPC環境はOS X 10.9.1です。Windowsでの導入手順は今更だけどやるgrunt入門編・インストールから基本的な使い方|WEB Drawerをご覧下さい。 Gruntで何が
あまりにも世情にうといので作った。 NHKのRSSを定期的にチェックして、新着ニュースの動画を連続自動再生する。 とてもテレビっぽい。おかげで4日後にオリンピックが開催されるという事を知れた。 ソースコード https://github.com/shokai/nhk-news-app zipでダウンロード https://github.com/shokai/nhk-news-app/releases node-webkitはネイティブアプリ作成のためにwebkitが改造されたwebブラウザで、HTML/JavaScript/CSSが実行できるだけでなくnode.jsのAPIもそのまま呼び出せる。 つまりjQueryでDOM操作すると同時にnodeのライブラリを使うような処理が、同じプログラムファイルにまとめて書ける。変にブリッジを書く事なくいつものnodeのように require(‘モジュ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く