Submit Search
Upload
フロントエンド開発の3ステップ(npm事始め)
•
19 likes
•
5,867 views
H
hashedrock
Follow
npm入門記事
Read less
Read more
Software
Report
Share
Report
Share
1 of 46
Download now
Download to read offline
Recommended
分散ワークフローエンジン『Digdag』の実装 at Tokyo RubyKaigi #11
分散ワークフローエンジン『Digdag』の実装 at Tokyo RubyKaigi #11
Sadayuki Furuhashi
Python 3.9からの新定番zoneinfoを使いこなそう
Python 3.9からの新定番zoneinfoを使いこなそう
Ryuji Tsutsui
Githubを使って簡単に helm repoを公開してみよう
Githubを使って簡単に helm repoを公開してみよう
Shingo Omura
一人でもはじめるGitでバージョン管理
一人でもはじめるGitでバージョン管理
Takafumi Yoshida
はじめてのGit forデザイナー&コーダー
はじめてのGit forデザイナー&コーダー
Saeko Yamamoto
nginxの紹介
nginxの紹介
Takashi Takizawa
Gitはじめの一歩
Gitはじめの一歩
Ayana Yokota
いつやるの?Git入門
いつやるの?Git入門
Masakazu Matsushita
Recommended
分散ワークフローエンジン『Digdag』の実装 at Tokyo RubyKaigi #11
分散ワークフローエンジン『Digdag』の実装 at Tokyo RubyKaigi #11
Sadayuki Furuhashi
Python 3.9からの新定番zoneinfoを使いこなそう
Python 3.9からの新定番zoneinfoを使いこなそう
Ryuji Tsutsui
Githubを使って簡単に helm repoを公開してみよう
Githubを使って簡単に helm repoを公開してみよう
Shingo Omura
一人でもはじめるGitでバージョン管理
一人でもはじめるGitでバージョン管理
Takafumi Yoshida
はじめてのGit forデザイナー&コーダー
はじめてのGit forデザイナー&コーダー
Saeko Yamamoto
nginxの紹介
nginxの紹介
Takashi Takizawa
Gitはじめの一歩
Gitはじめの一歩
Ayana Yokota
いつやるの?Git入門
いつやるの?Git入門
Masakazu Matsushita
HDFSネームノードのHAについて #hcj13w
HDFSネームノードのHAについて #hcj13w
Cloudera Japan
JavaからScala、そしてClojureへ: 実務で活きる関数型プログラミング
JavaからScala、そしてClojureへ: 実務で活きる関数型プログラミング
Kent Ohashi
Ruby on Rails の特徴とそのエコシステム
Ruby on Rails の特徴とそのエコシステム
Tomoya Kawanishi
Office アドイン ハンズオン
Office アドイン ハンズオン
kinuasa
ノンプログラマでも今日から使える「Git」でバージョン管理
ノンプログラマでも今日から使える「Git」でバージョン管理
H2O Space. Co., Ltd.
PostgreSQLアンチパターン
PostgreSQLアンチパターン
Soudai Sone
概念モデリング再入門 + DDD
概念モデリング再入門 + DDD
Hiroshima JUG
君はyarn.lockをコミットしているか?
君はyarn.lockをコミットしているか?
Teppei Sato
[아이펀팩토리] 2018 데브데이 서버위더스 _04 리눅스 게임 서버 성능 분석
[아이펀팩토리] 2018 데브데이 서버위더스 _04 리눅스 게임 서버 성능 분석
iFunFactory Inc.
Go入門
Go入門
Takuya Ueda
ワンクリックデプロイ 〜いつまで手でデプロイしてるんですか〜 #devsumiA
ワンクリックデプロイ 〜いつまで手でデプロイしてるんですか〜 #devsumiA
Ryutaro YOSHIBA
Git 더하기 GitHub(구름IDE 환경)
Git 더하기 GitHub(구름IDE 환경)
Junyoung Lee
ネットワーク運用自動化の実際〜現場で使われているツールを調査してみた〜
ネットワーク運用自動化の実際〜現場で使われているツールを調査してみた〜
Taiji Tsuchiya
イミュータブルデータモデル(入門編)
イミュータブルデータモデル(入門編)
Yoshitaka Kawashima
競技プログラミング頻出アルゴリズム攻略
競技プログラミング頻出アルゴリズム攻略
K Moneto
node-gypを使ったネイティブモジュールの作成
node-gypを使ったネイティブモジュールの作成
shigeki_ohtsu
Kanban 101「明日から使えるかもしれないカンバン」
Kanban 101「明日から使えるかもしれないカンバン」
Shuji Yamada
Hinemos Deep Dive~ジョブ編~
Hinemos Deep Dive~ジョブ編~
Hinemos
Flutter移行の苦労と、乗り越えた先に得られたもの
Flutter移行の苦労と、乗り越えた先に得られたもの
Recruit Lifestyle Co., Ltd.
Fluentdのお勧めシステム構成パターン
Fluentdのお勧めシステム構成パターン
Kentaro Yoshida
ブラウザでの自動テスト
ブラウザでの自動テスト
hashedrock
NPMで便利なツールの紹介
NPMで便利なツールの紹介
Amuro Nishizawa
More Related Content
What's hot
HDFSネームノードのHAについて #hcj13w
HDFSネームノードのHAについて #hcj13w
Cloudera Japan
JavaからScala、そしてClojureへ: 実務で活きる関数型プログラミング
JavaからScala、そしてClojureへ: 実務で活きる関数型プログラミング
Kent Ohashi
Ruby on Rails の特徴とそのエコシステム
Ruby on Rails の特徴とそのエコシステム
Tomoya Kawanishi
Office アドイン ハンズオン
Office アドイン ハンズオン
kinuasa
ノンプログラマでも今日から使える「Git」でバージョン管理
ノンプログラマでも今日から使える「Git」でバージョン管理
H2O Space. Co., Ltd.
PostgreSQLアンチパターン
PostgreSQLアンチパターン
Soudai Sone
概念モデリング再入門 + DDD
概念モデリング再入門 + DDD
Hiroshima JUG
君はyarn.lockをコミットしているか?
君はyarn.lockをコミットしているか?
Teppei Sato
[아이펀팩토리] 2018 데브데이 서버위더스 _04 리눅스 게임 서버 성능 분석
[아이펀팩토리] 2018 데브데이 서버위더스 _04 리눅스 게임 서버 성능 분석
iFunFactory Inc.
Go入門
Go入門
Takuya Ueda
ワンクリックデプロイ 〜いつまで手でデプロイしてるんですか〜 #devsumiA
ワンクリックデプロイ 〜いつまで手でデプロイしてるんですか〜 #devsumiA
Ryutaro YOSHIBA
Git 더하기 GitHub(구름IDE 환경)
Git 더하기 GitHub(구름IDE 환경)
Junyoung Lee
ネットワーク運用自動化の実際〜現場で使われているツールを調査してみた〜
ネットワーク運用自動化の実際〜現場で使われているツールを調査してみた〜
Taiji Tsuchiya
イミュータブルデータモデル(入門編)
イミュータブルデータモデル(入門編)
Yoshitaka Kawashima
競技プログラミング頻出アルゴリズム攻略
競技プログラミング頻出アルゴリズム攻略
K Moneto
node-gypを使ったネイティブモジュールの作成
node-gypを使ったネイティブモジュールの作成
shigeki_ohtsu
Kanban 101「明日から使えるかもしれないカンバン」
Kanban 101「明日から使えるかもしれないカンバン」
Shuji Yamada
Hinemos Deep Dive~ジョブ編~
Hinemos Deep Dive~ジョブ編~
Hinemos
Flutter移行の苦労と、乗り越えた先に得られたもの
Flutter移行の苦労と、乗り越えた先に得られたもの
Recruit Lifestyle Co., Ltd.
Fluentdのお勧めシステム構成パターン
Fluentdのお勧めシステム構成パターン
Kentaro Yoshida
What's hot
(20)
HDFSネームノードのHAについて #hcj13w
HDFSネームノードのHAについて #hcj13w
JavaからScala、そしてClojureへ: 実務で活きる関数型プログラミング
JavaからScala、そしてClojureへ: 実務で活きる関数型プログラミング
Ruby on Rails の特徴とそのエコシステム
Ruby on Rails の特徴とそのエコシステム
Office アドイン ハンズオン
Office アドイン ハンズオン
ノンプログラマでも今日から使える「Git」でバージョン管理
ノンプログラマでも今日から使える「Git」でバージョン管理
PostgreSQLアンチパターン
PostgreSQLアンチパターン
概念モデリング再入門 + DDD
概念モデリング再入門 + DDD
君はyarn.lockをコミットしているか?
君はyarn.lockをコミットしているか?
[아이펀팩토리] 2018 데브데이 서버위더스 _04 리눅스 게임 서버 성능 분석
[아이펀팩토리] 2018 데브데이 서버위더스 _04 리눅스 게임 서버 성능 분석
Go入門
Go入門
ワンクリックデプロイ 〜いつまで手でデプロイしてるんですか〜 #devsumiA
ワンクリックデプロイ 〜いつまで手でデプロイしてるんですか〜 #devsumiA
Git 더하기 GitHub(구름IDE 환경)
Git 더하기 GitHub(구름IDE 환경)
ネットワーク運用自動化の実際〜現場で使われているツールを調査してみた〜
ネットワーク運用自動化の実際〜現場で使われているツールを調査してみた〜
イミュータブルデータモデル(入門編)
イミュータブルデータモデル(入門編)
競技プログラミング頻出アルゴリズム攻略
競技プログラミング頻出アルゴリズム攻略
node-gypを使ったネイティブモジュールの作成
node-gypを使ったネイティブモジュールの作成
Kanban 101「明日から使えるかもしれないカンバン」
Kanban 101「明日から使えるかもしれないカンバン」
Hinemos Deep Dive~ジョブ編~
Hinemos Deep Dive~ジョブ編~
Flutter移行の苦労と、乗り越えた先に得られたもの
Flutter移行の苦労と、乗り越えた先に得られたもの
Fluentdのお勧めシステム構成パターン
Fluentdのお勧めシステム構成パターン
Viewers also liked
ブラウザでの自動テスト
ブラウザでの自動テスト
hashedrock
NPMで便利なツールの紹介
NPMで便利なツールの紹介
Amuro Nishizawa
Gulp入門 - コーディングを10倍速くする
Gulp入門 - コーディングを10倍速くする
Hayashi Yuichi
UnderScoreとbootstrapとsassでword pressのテーマをつくろう
UnderScoreとbootstrapとsassでword pressのテーマをつくろう
Takahiro Nakahata
Sass/Compass よくあるトラブルと 解決方法・回避方法
Sass/Compass よくあるトラブルと 解決方法・回避方法
Maboroshi.inc
Style Guide活用のススメ
Style Guide活用のススメ
Shigeki Ohtsuki
DMMで新規サービス作ったらフロントエンドエンジニアの重要性が浮き彫りになった話 - DMM Study night
DMMで新規サービス作ったらフロントエンドエンジニアの重要性が浮き彫りになった話 - DMM Study night
石橋 啓太
悩まないコーディングをしよう! OOCSS,SMACSSを用いた、読みやすくてメンテナブルなCSS設計(Sass対応)
悩まないコーディングをしよう! OOCSS,SMACSSを用いた、読みやすくてメンテナブルなCSS設計(Sass対応)
Horiguchi Seito
TypeScriptへの入口
TypeScriptへの入口
Sunao Tomita
Node.js Tutorial at Hiroshima
Node.js Tutorial at Hiroshima
Yoshihiro Iwanaga
Nodeとフロントエンド − 知っておかなければならない、今と未来の話 −
Nodeとフロントエンド − 知っておかなければならない、今と未来の話 −
Kohei Asai
Go言語の紹介
Go言語の紹介
Amuro Nishizawa
キャッチアップJavaScriptビルド -ビルドから見るJSの今/2016春
キャッチアップJavaScriptビルド -ビルドから見るJSの今/2016春
Kondo Hitoshi
Sassについてゼロから解説 -基本の理解だけでも効率アップ-|第14回ゼロから始めるWordPress勉強会
Sassについてゼロから解説 -基本の理解だけでも効率アップ-|第14回ゼロから始めるWordPress勉強会
Yoshinori Kobayashi
いい感じのフロントエンド開発環境を作ってみた
いい感じのフロントエンド開発環境を作ってみた
Hayashi Yuichi
Node js 入門
Node js 入門
Satoshi Takami
しょぼいプレゼンをパワポのせいにするな! by @jessedee
しょぼいプレゼンをパワポのせいにするな! by @jessedee
「MakeLeaps」請求書の作成、管理、郵送
Viewers also liked
(17)
ブラウザでの自動テスト
ブラウザでの自動テスト
NPMで便利なツールの紹介
NPMで便利なツールの紹介
Gulp入門 - コーディングを10倍速くする
Gulp入門 - コーディングを10倍速くする
UnderScoreとbootstrapとsassでword pressのテーマをつくろう
UnderScoreとbootstrapとsassでword pressのテーマをつくろう
Sass/Compass よくあるトラブルと 解決方法・回避方法
Sass/Compass よくあるトラブルと 解決方法・回避方法
Style Guide活用のススメ
Style Guide活用のススメ
DMMで新規サービス作ったらフロントエンドエンジニアの重要性が浮き彫りになった話 - DMM Study night
DMMで新規サービス作ったらフロントエンドエンジニアの重要性が浮き彫りになった話 - DMM Study night
悩まないコーディングをしよう! OOCSS,SMACSSを用いた、読みやすくてメンテナブルなCSS設計(Sass対応)
悩まないコーディングをしよう! OOCSS,SMACSSを用いた、読みやすくてメンテナブルなCSS設計(Sass対応)
TypeScriptへの入口
TypeScriptへの入口
Node.js Tutorial at Hiroshima
Node.js Tutorial at Hiroshima
Nodeとフロントエンド − 知っておかなければならない、今と未来の話 −
Nodeとフロントエンド − 知っておかなければならない、今と未来の話 −
Go言語の紹介
Go言語の紹介
キャッチアップJavaScriptビルド -ビルドから見るJSの今/2016春
キャッチアップJavaScriptビルド -ビルドから見るJSの今/2016春
Sassについてゼロから解説 -基本の理解だけでも効率アップ-|第14回ゼロから始めるWordPress勉強会
Sassについてゼロから解説 -基本の理解だけでも効率アップ-|第14回ゼロから始めるWordPress勉強会
いい感じのフロントエンド開発環境を作ってみた
いい感じのフロントエンド開発環境を作ってみた
Node js 入門
Node js 入門
しょぼいプレゼンをパワポのせいにするな! by @jessedee
しょぼいプレゼンをパワポのせいにするな! by @jessedee
フロントエンド開発の3ステップ(npm事始め)
1.
フロントエンド 開発の3ステップ npmことはじめ @hashedrock
2.
フロントエンド やりたい
3.
入門記事でいきなり 重いのが見つかる 例:「gulp + browserify
+ reactやってみる」
4.
npm?
5.
bower? (どちらもパッケージマネージャ)
6.
browserify? gulp? grunt? mocha? phantomjs? iojs? coffee?
7.
情報量おおすぎ
8.
本職JSer以外 「ひくわー」
9.
覚えるべきものを 一つに絞ろう
10.
npm
11.
覚える機能は3つだけ
12.
1. npm init 2.
npm install 3. npm run
13.
npm init (1)
14.
「このディレクトリ下は 我々npmが 管理下に置く!」宣言
15.
npm initを実行したところ ←プロジェクト名(適当でよい) ←バージョン(このままでよい) ←最初に実行されるjs(あんまり気にしなくていい) ←作者名(是非名乗ろう) いろいろ聞かれるけど、全部リターンでかまわない
16.
結果 ディレクトリ直下にpackage.jsonができる
17.
package.jsonの中身 { "name": "hello", "version": "1.0.0", "description":
"", "main": "index.js", "scripts": { "test": "echo "Error: no test specified" && exit 1" }, "author": "", "license": "ISC" }
18.
npm install (2)
19.
npm install jquery
̶save パッケージ名 「jquery」をネットから持ってくる
20.
npm i jquery
-S 省略形でも書ける
21.
実行結果 「node_modules」フォルダができて、 直下にjqueryがインストールされる
22.
package.json { "name": "hello", "version": "1.0.0", "description":
"", "main": "index.js", "scripts": { "test": "echo "Error: no test specified" && exit 1" }, "author": "", "license": "ISC", "dependencies": { "jquery": "^2.1.3" } }
23.
{ "name": "hello", "version": "1.0.0", "description":
"", "main": "index.js", "scripts": { "test": "echo "Error: no test specified" && exit 1" }, "author": "", "license": "ISC", "dependencies": { "jquery": "^2.1.3" } } 以後、dependencies内は npm install だけで、自動インストール
24.
browserify • node_modules下にインストールされたライブラリ を、jsから参照できるようにするツール • 普通の言語なら当たり前の機能だけど、ブラウザ上 では今までできなかった
25.
<script src="assets/js/jquery.min.js"></script> var $
= require("jquery"); browserify使うとこう書ける
26.
npm + browserifyの組み合わせが強い npmで山ほどライブラリ突っ込める
27.
browserifyは 「npm install -g
browserify」 でインストールできます。 npm install -gについては後述
28.
npm run (3)
29.
タスク実行機能
30.
"scripts": { "build": browserify
src/main.js > build/bundle.js } $ npm run build $ browserify src/main.js > build/bundle.js package.json内に下記のように書いておく とすると、npmは下記のコマンドを実行する
31.
指定したコマンド 実行してくれるだけ
32.
しぬほどシンプル
33.
npm runでタスク一覧
34.
例えば npm run build npm
run watch npm run serve などを書いておくと、 他人に引き継ぎやすくなる
35.
他人に説明する例 「npm installしたあと、 npm runで出てくるコマンド 叩いてください」 説明完了
36.
便利機能 というよりはお作法
37.
自動リロードとか は・・・?
38.
npm install -g
wtch
39.
サーバ立てたい
40.
npm install -g
http-server
41.
npm install -g でいろんな小物ツールを インストールできる 参考 https://gist.github.com/hashrock/ 7fdf1b937e1eb5de796d
42.
タスク自分書くの 面倒くさい
43.
https://github.com/ sushicorp/sushipm タスクのテンプレート集 作っときました
44.
の プロダクトです
45.
npm is fun
46.
end
Download now