Simple, powerful, free tools to create and use millions of apps.
![Glitch](https://cdn-ak-scissors.b.st-hatena.com/image/square/46ab5c5436747b7b909ef3bb51d62affb99e4d1b/height=288;version=1;width=512/https%3A%2F%2Fcdn.glitch.global%2F605e2a51-d45f-4d87-a285-9410ad350515%2Fhome-ogimage.png%3Fv%3D1651176454988)
注意: これはまだ未定です。 他にいい案があれば、提案やコメントをしてほしいです。 "use strict"; const fs = require("@nodejs/fs"); // import fs from '@nodejs/fs'; console.log(fs.readFileSync(__filename, "utf8")); このように、@nodejsという名前空間でビルトインモジュールを保護する案が出ています。 もちろん、過去のコードに影響はありません。 PR は一旦、閉じられました。 WIP: tools: add core files to @nodejs namespace by cjihrig · Pull Request #20922 · nodejs/node This is probably not the ideal solution, but I wan
書こう書こうと思いながらこのタイミングまでのがしてしまいました。 今一番 Node.js の中で hot な discussion の一つと言えるでしょう、『ES Modules が Node.js の中でどうなるか』です。 ES Modules 現況 ES2015 が発刊されてそろそろ一年です。 ES2015 にある機能は Node.js v6でも 93% 程度カバーされています。モダンブラウザでも大体が90%を超えています。しかし、 ES Modules だけはまだどのブラウザも実装しきれていません(kangax compat table は ES Modules は省かれてます)。 そもそも ECMAScript 2015 自身で定義されたのは構文だけなので、構文はともかく、どうやってモジュールを取ってくるかという Loader の部分がまだ決まりきっていません。 https://w
フロントエンド開発をする際、Browsersyncなどを使ってlocalhostサーバを立てることは多いかと思います。この記事は、サーバ側のAPIやCookieの都合から、本番環境のURLでそのローカルサーバにアクセスしたくなったとき向けのTipsです。 やり方はいくつもありそうですが、ここではHoxyというNode.js上で動作するプロキシサーバを、gulpと連携させて使う方法を紹介します。 Node製のプロキシを選んだのは、外部ツールのインストールや、hostsの書き換えをせずにサクッと環境構築できるようにするためです。 実現すること ブラウザでhttp://example.com/(任意のURL)にアクセスすると、ローカルのコンテンツが表示される 開発中はlivereloadなどBrowsersyncの各種機能が利用できる npm install && gulpだけで環境を共有できる
先日アナウンスされた脆弱性とその周辺について、とりとめなく。 The npm Blog — Package install scripts vulnerability Vulnerability Note VU#319816 脆弱性の概要 VU#319816 によれば、今回問題になっているのはnpmの以下の性質を利用するとnpmパッケージでワーム(自己増殖力のあるマルウェア)を作れるというもの。 依存パッケージのバージョンをロックせず、semverにより範囲指定することが多い CLIで一度npmへloginすると、明示的にnpm logoutするまで認証が永続化される npm registry が中央集権型サーバーである 具体的な手法として、Chris Contoliniが PoC として pizza-party というリポジトリを公開している*1。以下のように動作する。 ワームが仕込まれ
8 d'b o 8 o 8 8 8 8 8 .oPYo. o8P o8P .oPYo. .oPYo. .oPYo8 o8 .oPYo. 8 8oooo8 8 8 ooooo 8 8 .oooo8 8 8 8 8 8 8 8. 8 8 8 8 8 8 8 8 8 8 8 8 `Yooo' 8 8 8YooP' `YooP8 `YooP' 88 8 `YooP' ..:.....::..::::..:::::::8 ....::.....::.....:..::..:.....: :::::::::::::::::::::::::8 :::::::::::::::::::::::::::::::: :::::::::::::::::::::::::..:::::::::::::::::::::::::::::::: Welcome to left-pad.io! ## History On M
だいぶ間が空いてしまったんですが、デブサミ 2016 で非同期処理について話してきました。 event.shoeisha.jp トピックとしてものすごく突出してたので成立するか不安だったのですが、なんとなく結論めいたものはでました。 詳しくは takezoe さんのブログを見て頂けると良いかと思います。 takezoe.hatenablog.com 結論みたいなもの まぁやっぱり同期処理と非同期処理は『意識して使い分けなくても言語なりフレームワークなりで吸収するようになっていくんじゃないか』というのが1つの結論のような形になった。ES.Nextの async/await はその1つの形だと思う。"意識しないで"というのは難しいが、ほとんど同期処理と変わらない形で書けるようになる。 Node.js は coreの中でも Promise を採用するように只今構想中だし、ユーザーランドの場合はP
AWSでは様々な便利なサービスが提供されています。中にはRDSやElasticCacheのように既存のミドルウェアに対するマネージドサービスを提供するものもあり、これらについては既存のミドルウェアを使って開発することができますが、AWS固有のサービスについてはアプリケーションを動作させるには実際にサービスに接続する必要があり、開発環境が制限されてしまいます。 もちろんソフトウェア側で抽象化しておき、DIなどの手法を用いてモックに差し替えるという方法も考えられますが、特にストレージとして利用するサービスなどの場合はインタラクションが必要になるのでモックでは再現しづらいですし、やはり実際に動作するサービスに接続して開発やテストを行うほうが効率的です。 そこで、AWSのサービスを擬似的にローカルで再現することのできるプロダクトを集めてみました。 S3 node.jsで動作するs3-proxyが使
さてさて、東京Node学園祭2015が開催されました。 すごくすごく楽しかったです。午前中から最後の最後までめちゃくちゃ面白かった。 振り返りながらどういうカンファレンスだったのか語っていこうと思います。 アンケート結果 アンケートに回答していただいた皆様、ありがとうございました。反省するべき点も多いので来年にまた活かします。 さて、アンケートでvoteしてもらった結果、参加者の皆さんが選んだコンテンツのトップ5は以下のようになりました。 1. Electroknit! - Pixel to sweater with Node.js by @kosamari 2. "npm": ">=3" by @maybekatz 2. The State of JavaScript by @domenic 4. NodeDiscussion 5. フロントエンドに秩序を取り戻す方法 〜はてなブログ編集
はじめに 弊社で実施している社内向けJavaScriptの勉強会のコンテンツまとめです(最近はやってないのも上げてる)。対象は独学でJavaScriptを少し触ったことがあるけど企業でやったことはない、くらいのレベルの人です。このコンテンツを作っている筆者も1年くらいしかJavaScriptを触ってないので怪しい所もあると思いますが、社内でのJavaScript教育に困っている方の参考になればと思います。 ちょっと一部古かったりするので、Issueでも立てて下さい。気が向いたら直します。 ES2015(ES6) JavaScriptを書く上でスタンダードになりつつあるトランスパイラBabelを使用したコーディングについて学びます。ES2015の記法について全て網羅しているわけでなく、今すぐ使える簡単なものを優先して開設しています。ES2015の構文を使うことで何が楽になるのか、という点を重
カメラを新調して写真撮りまくってます。CTOの林です。 ブラウザでの対応が進んできたこともあり、ES6がかなり注目されてきています。今日はその中でも「Promise」について簡単に解説していきたいと思います。 Promiseとは Promiseは、非同期の処理をわかりやすく制御するオブジェクトで、ES6(ES2015/ECMAScript 2015)に追加された機能の1つです。 http://caniuse.com/#feat=promises 現在は、多くのブラウザですでに実装されています。 また、多くのPolyfillが作られているため、非対応のIEでもPromiseを使うことができます。 https://github.com/jakearchibald/es6-promise https://github.com/taylorhakes/promise-polyfill https:
先日、東京Node学園18時限目「Node.js 4.0の話」の回で、LTをさせていただきました。 Node学園 18時限目 Node.js v4.0の話 - connpass 資料はこちらです。 speakerdeck.com たかが10分といえど、120人*10分=20人時間というプレッシャー。勉強会等で発表するのはこれが初めてで、この1週間はひたすらこのLTのことだけを考えて生活していたような。 テーマは初めに思い切って設定したものの、まずはこの1年の開発を振り返り何がポイントだったのかを考えるところから・・・、 そこからプロットを作って話す練習をしてみると、どうも話が繋っていなかったり、技術的な話が少なすぎて、これじゃNodeの会合に来ているお客さんに申し訳ないよなぁ、というような内容だったりと、内容をまとめ上げるのに苦心しました。 そんな苦労もあった準備の甲斐もあり、良い反応も頂
昨年 NodeConfEU 2014 に行った時に来年は発表しようと思って、それから一年。ちゃんと発表することができました!! 発表資料 CFPがあったのは6月頃で、その頃は Hexi についての話をまとめようとしてたのでその話をしました。 Hexi の話は4月頃にしましたが、割りとアグレッシブな技術を使っていて、http2とかAWS Lambdaとかio.jsとかを積極的に使ってたのでそれを広く浅くという形で紹介してきました。 yosuke-furukawa.hatenablog.com Giving a very amusing presentation on hexagon and hexi stickers at #NodeConfEU @yosuke_furukawa pic.twitter.com/o5YT4U08U7— Guy Ellis (@wildfiction) Sep
NodeConf に行ってきました。 NodeConf っていうのは Node.js のための勉強会です。 io.js の中心人物である mikeal や、 npm のCEO である izaacs 、 hapijs author であり、先日 Walmart を退社した Eran Hammer など、そうそうたるメンバーの中でディスカッションをしてきました。 NodeConf Adventure とは NodeConf Adventureはいわゆる発表者がいて、聴講者が聞くっていうスタイルのカンファレンスじゃありません。 なんというかものすごくメタなカンファレンスで、ワークショップとノウハウの共有をメインとしたディスカッションのための場所です。 アンカンファレンスっていう形式ですね。 Hello NodeConf! pic.twitter.com/MHBVi6Jg4c— Yosuke FU
いくつかこの何日間でニュースが出ているので紹介します。 ちなみに、 io.js と Node.js のニュースに関してはこれまで2つ書いたので、まだ良く知らない人はそれをまずはご一読ください。 yosuke-furukawa.hatenablog.com yosuke-furukawa.hatenablog.com さて、次の展開へ、という事でいくつか話があります。 「Join the Node Foundation?」 というissueが mikeal から提案される github.com issue 本文を翻訳したものを貼っておきます。 Node Foundationのためのすべての文書が揃った。 TSC Charter (技術委員会の目的) Development Policy(開発ポリシー) Convergence Plan(移行プラン) Project Lifecyle (Wor
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ではchild_process.spawn()などで特定のコマンドを別プロセスで実行することができますが、前提としてそのコマンドが実行可能な状態でなければなりません。当該コマンドにPATHが通っているかどうかはnode-whichなどで確認できますし、ドキュメントに「事前に◯◯というプログラムをインストールしてください」とリクワイアメントを書いておけば利用者は対応できます。 しかし、できることなら利用者にそのような手間をかけさせたくはありません。npm installコマンドひとつでNodeプログラムに必要なファイルは全て揃ってほしいものです。ではどうするのかというと、npmのパッケージと同じように必要ならバイナリーもダウンロードしてしまえば良いのです。このような、一見強引ながら極めて合理的な解決策を提供するのがbin-wrapperです。 bin-wrapperを使うbin-wr
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く