狠狠撸

狠狠撸Share a Scribd company logo
YAMADA Junji
Meteor Kitchen
Meteor Kitchen とは?
? Meteor のソースコードを自動生成
? JSONで設定ファイルを書く
? コマンド一発でアプリが完成
? URL: http://www.meteorkitchen.com/
? 紹介ビデオ:
https://www.youtube.com/watch?v=9k5YRxjP58Y
コマンドはこんな感じ
? $ meteor-kitchen [設定ファイル] [出力フォルダ名]
? $ meteor-kitchen myapp.json myapp
? myapp/ フォルダにアプリが生成される
? $ cd myapp
? $ meteor
メリット
? 時間とお金を節約
? 数時間の代わりに数分でコードをビルド
? 1行もコードを書かずに完成することもある
? プロトタイピングに最適
? 高品質なコード
? コンポーネントと呼ばれる部品を使ってアプリを生成
? コードは読みやすく、安定して、バグがない
? 一度書けば何度でも使える
インストール
$ curl http://www.meteorkitchen.com/install | /bin/sh
設定ファイルはこんな感じ
{
"application": {
"free_zone": {
"pages": [
{ "name": "home", "title": "Home page" },
{ "name": "about", "title": "About" }
],
"components": [
{
"name": "main_menu",
"type": "menu",
"items": [
{ "title": "Home page", "route": "home" },
{ "title": "About", "route": "about" }
]
}
]
}
}
}
設定ファイルのパターン 1
? pageオブジェクトのプロパティ => name, title
? “home”という名前のページから次のファイルを生成
? home.html, home.js, home_controller.js
? ファイル名とルート名はスネークケースで書く
? my_app_name
? テンプレート名はキャメルケースで書く
? MyAppName
設定ファイルのパターン2
? menuオブジェクトのプロパティ => name, class,
items
? classプロパティは<ul>要素にマッピング
? menuの各itemのプロパティ => title, route
サブページ
{
"name": "home",
"title": "Home page",
"pages": [
{
"name": "subpage_1",
"title": "Home - Subpage 1",
"pages": [
{
"name": "subsub_1",
"title": "Home - Subpage 1 - Sub-Sub page 1",
"pages": [
]
}
]
}
]
}
フロントエンドフレームワーク
?bootstrap
? semantic-ui ※未完成
? materialize ※未完成
ビジュアルテーマ
?bootswatchの各テーマ
? デフォルトは bootswatch-amelia
コンポーネント
コンポーネント 役割
menu navbars, navs, side-menus and tab-menus
form データの追加、更新
data_view コレクションのデータを表形式で表示 (検索、並べ替え)
tree_view 階層データをツリー形式で表示
jumbotron 大きな文字のクールなテキスト(表紙用)
markdown Markdown形式のテキスト
div <div>要素
section <section>要素
コレクション
? applicationオブジェクトにcollections配列を追加
{
"application": {
"title": "Example application",
"collections": [
{ "name": "customers"
"fields": [
{ "name": "name", "title": "Name", "required": true },
{ "name": "phone", "title": "Phone", "default": "-" },
{ "name": "email", "title": "E-mail", "type": "email" }
]
}
],
}
}
データベース関連機能
?Queries クエリ
?Joins ジョイン
顿补迟补痴颈别飞コンポーネント
Formコンポーネント read_only
Formコンポーネント insert
Formコンポーネント update
OAuth
"login_with_password": true,
"login_with_google": true,
"login_with_github": true,
"login_with_linkedin": true,
"login_with_facebook": true,
"login_with_twitter": true,
"login_with_meteor": true
ユーザーロール
? role配列にロールを追加
"roles": ["admin", "manager", "user"],
"default_role": "user",
? ページへのアクセスを制限
"pages": [
{ "name": "home_private",
"title": "Private home page" },
{
"name": "admin_panel",
"title": "Admin panel",
"roles": ["admin"]
},
{ "name": "logout", "template": "logout" }
],
ロールでコレクションを制限
"collections": [
{
"name": "customers",
"roles_allowed_to_read": [],
"roles_allowed_to_insert": ["admin", "manager"],
"roles_allowed_to_update": ["admin", "manager"],
"roles_allowed_to_delete": ["nobody"],
}
],
ドキュメントオーナー
{
"name": "customers",
"owner_field": "ownerId",
"roles_allowed_to_read": ["admin", "owner"],
"roles_allowed_to_insert": ["admin", "user"],
"roles_allowed_to_update": ["owner"],
"roles_allowed_to_delete": ["nobody"],
}
まとめ
? 設定ファイルだけでアプリが書ける
? ウェブアプリに必要なコンポーネントがそろってい
る
? OAuthが使える
? ユーザーロールによるアクセス制限ができる
? とはいえ、覚えることはそれなりに多い (^^;)
Ad

Recommended

Jsug spring bootコート?リーテ?ィンク? 接触篇 a contact
Jsug spring bootコート?リーテ?ィンク? 接触篇 a contact
tsukasa tamaru
?
Jenkinsの導入 Vol.01
Jenkinsの導入 Vol.01
regret raym
?
Bot Framework v4 開発 Tips 2018-11
Bot Framework v4 開発 Tips 2018-11
Atsushi Yokohama (BEACHSIDE)
?
Jenkinsの導入 vol.02 Bitbucketと連携する
Jenkinsの導入 vol.02 Bitbucketと連携する
regret raym
?
Scala 初めての人が Heroku で Web アプリを公開するまで
Scala 初めての人が Heroku で Web アプリを公開するまで
Hideaki Miyake
?
Javaユーサ?に贈るJenkins 25のTips
Javaユーサ?に贈るJenkins 25のTips
Masanori Satoh
?
Jenkins と groovy
Jenkins と groovy
Kohsuke Kawaguchi
?
月刊LT10月:Raspberry Pi×Milkcocoa
月刊LT10月:Raspberry Pi×Milkcocoa
Syuhei Hiya
?
巨大不明ビルドの継続的统合を目的とするビルドパイプラインを主轴とした作戦要纲
巨大不明ビルドの継続的统合を目的とするビルドパイプラインを主轴とした作戦要纲
Kiyotaka Oku
?
箩别苍办颈苍蝉で游ぶ
箩别苍办颈苍蝉で游ぶ
(^-^) togakushi
?
闯别苍办颈苍蝉を用いた础苍诲谤辞颈诲アプリビルド作业効率化
闯别苍办颈苍蝉を用いた础苍诲谤辞颈诲アプリビルド作业効率化
Kenichi Kambara
?
(IDEユーザのための) ClojureのEmacs開発環境について
(IDEユーザのための) ClojureのEmacs開発環境について
Kazuhiro Hara
?
3分間 開発環境クッキング 2012.07 #pyfes
3分間 開発環境クッキング 2012.07 #pyfes
Takeshi Komiya
?
Gcpug begginers #1LT startup scriptとshutdown script
Gcpug begginers #1LT startup scriptとshutdown script
tsukasa tamaru
?
みんなて?おは?けになる #mlkcca
みんなて?おは?けになる #mlkcca
Hikari Fukasawa
?
Jenkinsstudy#4kokawa
Jenkinsstudy#4kokawa
Takashi Kokawa
?
Write slides and books in VSCode + Markdown
Write slides and books in VSCode + Markdown
ロフト くん
?
さわってみよう Firefox OS in 大阪
さわってみよう Firefox OS in 大阪
Honma Masashi
?
最近のCandyCane - PHP版Redmineでタスク管理を始めよう
最近のCandyCane - PHP版Redmineでタスク管理を始めよう
Yusuke Ando
?
今流行りのウェブアプリ开発环境驰别辞尘补苍
今流行りのウェブアプリ开発环境驰别辞尘补苍
tomo_masakura
?
milkcocoa入門@milkcocoa meetup#1
milkcocoa入門@milkcocoa meetup#1
Syuhei Hiya
?
Multibranch Pipeline with Docker 入門編
Multibranch Pipeline with Docker 入門編
kimulla
?
2020/06/16 tsjp-azure-staticwebapps-vs_codespaces
2020/06/16 tsjp-azure-staticwebapps-vs_codespaces
Issei Hiraoka
?
Getting Started With Ore-Ore Swift Standard Library +
Getting Started With Ore-Ore Swift Standard Library +
Tomohiro Kumagai
?
Getting Started With Ore-Ore Swift Standard Library ++ ほんのり続報
Getting Started With Ore-Ore Swift Standard Library ++ ほんのり続報
Tomohiro Kumagai
?
Storybook web-and-circleci
Storybook web-and-circleci
Jesse Katsumata
?
Mojoliciousのl10 nを自動化するツール
Mojoliciousのl10 nを自動化するツール
Tetsuya Tatsumi
?
日本市場における最新のDrupalビジネス動向 20160901v4
日本市場における最新のDrupalビジネス動向 20160901v4
Hidekazu Ikeda
?
第二回 クラウドサーバー管理者若葉の会
第二回 クラウドサーバー管理者若葉の会
masayoshi shiraishi
?

More Related Content

What's hot (20)

巨大不明ビルドの継続的统合を目的とするビルドパイプラインを主轴とした作戦要纲
巨大不明ビルドの継続的统合を目的とするビルドパイプラインを主轴とした作戦要纲
Kiyotaka Oku
?
箩别苍办颈苍蝉で游ぶ
箩别苍办颈苍蝉で游ぶ
(^-^) togakushi
?
闯别苍办颈苍蝉を用いた础苍诲谤辞颈诲アプリビルド作业効率化
闯别苍办颈苍蝉を用いた础苍诲谤辞颈诲アプリビルド作业効率化
Kenichi Kambara
?
(IDEユーザのための) ClojureのEmacs開発環境について
(IDEユーザのための) ClojureのEmacs開発環境について
Kazuhiro Hara
?
3分間 開発環境クッキング 2012.07 #pyfes
3分間 開発環境クッキング 2012.07 #pyfes
Takeshi Komiya
?
Gcpug begginers #1LT startup scriptとshutdown script
Gcpug begginers #1LT startup scriptとshutdown script
tsukasa tamaru
?
みんなて?おは?けになる #mlkcca
みんなて?おは?けになる #mlkcca
Hikari Fukasawa
?
Jenkinsstudy#4kokawa
Jenkinsstudy#4kokawa
Takashi Kokawa
?
Write slides and books in VSCode + Markdown
Write slides and books in VSCode + Markdown
ロフト くん
?
さわってみよう Firefox OS in 大阪
さわってみよう Firefox OS in 大阪
Honma Masashi
?
最近のCandyCane - PHP版Redmineでタスク管理を始めよう
最近のCandyCane - PHP版Redmineでタスク管理を始めよう
Yusuke Ando
?
今流行りのウェブアプリ开発环境驰别辞尘补苍
今流行りのウェブアプリ开発环境驰别辞尘补苍
tomo_masakura
?
milkcocoa入門@milkcocoa meetup#1
milkcocoa入門@milkcocoa meetup#1
Syuhei Hiya
?
Multibranch Pipeline with Docker 入門編
Multibranch Pipeline with Docker 入門編
kimulla
?
2020/06/16 tsjp-azure-staticwebapps-vs_codespaces
2020/06/16 tsjp-azure-staticwebapps-vs_codespaces
Issei Hiraoka
?
Getting Started With Ore-Ore Swift Standard Library +
Getting Started With Ore-Ore Swift Standard Library +
Tomohiro Kumagai
?
Getting Started With Ore-Ore Swift Standard Library ++ ほんのり続報
Getting Started With Ore-Ore Swift Standard Library ++ ほんのり続報
Tomohiro Kumagai
?
Storybook web-and-circleci
Storybook web-and-circleci
Jesse Katsumata
?
Mojoliciousのl10 nを自動化するツール
Mojoliciousのl10 nを自動化するツール
Tetsuya Tatsumi
?
巨大不明ビルドの継続的统合を目的とするビルドパイプラインを主轴とした作戦要纲
巨大不明ビルドの継続的统合を目的とするビルドパイプラインを主轴とした作戦要纲
Kiyotaka Oku
?
箩别苍办颈苍蝉で游ぶ
箩别苍办颈苍蝉で游ぶ
(^-^) togakushi
?
闯别苍办颈苍蝉を用いた础苍诲谤辞颈诲アプリビルド作业効率化
闯别苍办颈苍蝉を用いた础苍诲谤辞颈诲アプリビルド作业効率化
Kenichi Kambara
?
(IDEユーザのための) ClojureのEmacs開発環境について
(IDEユーザのための) ClojureのEmacs開発環境について
Kazuhiro Hara
?
3分間 開発環境クッキング 2012.07 #pyfes
3分間 開発環境クッキング 2012.07 #pyfes
Takeshi Komiya
?
Gcpug begginers #1LT startup scriptとshutdown script
Gcpug begginers #1LT startup scriptとshutdown script
tsukasa tamaru
?
みんなて?おは?けになる #mlkcca
みんなて?おは?けになる #mlkcca
Hikari Fukasawa
?
Write slides and books in VSCode + Markdown
Write slides and books in VSCode + Markdown
ロフト くん
?
さわってみよう Firefox OS in 大阪
さわってみよう Firefox OS in 大阪
Honma Masashi
?
最近のCandyCane - PHP版Redmineでタスク管理を始めよう
最近のCandyCane - PHP版Redmineでタスク管理を始めよう
Yusuke Ando
?
今流行りのウェブアプリ开発环境驰别辞尘补苍
今流行りのウェブアプリ开発环境驰别辞尘补苍
tomo_masakura
?
milkcocoa入門@milkcocoa meetup#1
milkcocoa入門@milkcocoa meetup#1
Syuhei Hiya
?
Multibranch Pipeline with Docker 入門編
Multibranch Pipeline with Docker 入門編
kimulla
?
2020/06/16 tsjp-azure-staticwebapps-vs_codespaces
2020/06/16 tsjp-azure-staticwebapps-vs_codespaces
Issei Hiraoka
?
Getting Started With Ore-Ore Swift Standard Library +
Getting Started With Ore-Ore Swift Standard Library +
Tomohiro Kumagai
?
Getting Started With Ore-Ore Swift Standard Library ++ ほんのり続報
Getting Started With Ore-Ore Swift Standard Library ++ ほんのり続報
Tomohiro Kumagai
?
Mojoliciousのl10 nを自動化するツール
Mojoliciousのl10 nを自動化するツール
Tetsuya Tatsumi
?

Viewers also liked (20)

日本市場における最新のDrupalビジネス動向 20160901v4
日本市場における最新のDrupalビジネス動向 20160901v4
Hidekazu Ikeda
?
第二回 クラウドサーバー管理者若葉の会
第二回 クラウドサーバー管理者若葉の会
masayoshi shiraishi
?
Post by email for pulse cms
Post by email for pulse cms
Kuniyoshi Tone
?
Economic performance management approach, itc ltd sustainability report 2006
Economic performance management approach, itc ltd sustainability report 2006
varsha nihanth lade
?
死闘!Og mailinglist
死闘!Og mailinglist
Kuniyoshi Tone
?
Drupal8を体験しよう Drupal8 & Docker
Drupal8を体験しよう Drupal8 & Docker
惠 紀野
?
2016年を振り返る
2016年を振り返る
Kuniyoshi Tone
?
What's Drupal & Drupal as a Employee App Platform
What's Drupal & Drupal as a Employee App Platform
惠 紀野
?
顿谤耻辫补濒补完计画
顿谤耻辫补濒补完计画
Kuniyoshi Tone
?
Recovery: Job Growth and Education Requirements Through 2020
Recovery: Job Growth and Education Requirements Through 2020
CEW Georgetown
?
African Americans: College Majors and Earnings
African Americans: College Majors and Earnings
CEW Georgetown
?
The Online College Labor Market
The Online College Labor Market
CEW Georgetown
?
Game Based Learning for Language Learners
Game Based Learning for Language Learners
Shelly Sanchez Terrell
?
Teaching Students with Emojis, Emoticons, & Textspeak
Teaching Students with Emojis, Emoticons, & Textspeak
Shelly Sanchez Terrell
?
What's Trending in Talent and Learning for 2016?
What's Trending in Talent and Learning for 2016?
Skillsoft
?
SXSW 2016: The Need To Knows
SXSW 2016: The Need To Knows
Ogilvy Consulting
?
Digitized Student Development, Social Media, and Identity
Digitized Student Development, Social Media, and Identity
Paul Brown
?
GAME ON! Integrating Games and Simulations in the Classroom
GAME ON! Integrating Games and Simulations in the Classroom
Brian Housand
?
Connecting With the Disconnected
Connecting With the Disconnected
Chris Wejr
?
Responding to Academically Distressed Students
Responding to Academically Distressed Students
Mr. Ronald Quileste, PhD
?
日本市場における最新のDrupalビジネス動向 20160901v4
日本市場における最新のDrupalビジネス動向 20160901v4
Hidekazu Ikeda
?
第二回 クラウドサーバー管理者若葉の会
第二回 クラウドサーバー管理者若葉の会
masayoshi shiraishi
?
Post by email for pulse cms
Post by email for pulse cms
Kuniyoshi Tone
?
Economic performance management approach, itc ltd sustainability report 2006
Economic performance management approach, itc ltd sustainability report 2006
varsha nihanth lade
?
Drupal8を体験しよう Drupal8 & Docker
Drupal8を体験しよう Drupal8 & Docker
惠 紀野
?
What's Drupal & Drupal as a Employee App Platform
What's Drupal & Drupal as a Employee App Platform
惠 紀野
?
顿谤耻辫补濒补完计画
顿谤耻辫补濒补完计画
Kuniyoshi Tone
?
Recovery: Job Growth and Education Requirements Through 2020
Recovery: Job Growth and Education Requirements Through 2020
CEW Georgetown
?
African Americans: College Majors and Earnings
African Americans: College Majors and Earnings
CEW Georgetown
?
The Online College Labor Market
The Online College Labor Market
CEW Georgetown
?
Game Based Learning for Language Learners
Game Based Learning for Language Learners
Shelly Sanchez Terrell
?
Teaching Students with Emojis, Emoticons, & Textspeak
Teaching Students with Emojis, Emoticons, & Textspeak
Shelly Sanchez Terrell
?
What's Trending in Talent and Learning for 2016?
What's Trending in Talent and Learning for 2016?
Skillsoft
?
Digitized Student Development, Social Media, and Identity
Digitized Student Development, Social Media, and Identity
Paul Brown
?
GAME ON! Integrating Games and Simulations in the Classroom
GAME ON! Integrating Games and Simulations in the Classroom
Brian Housand
?
Connecting With the Disconnected
Connecting With the Disconnected
Chris Wejr
?
Responding to Academically Distressed Students
Responding to Academically Distressed Students
Mr. Ronald Quileste, PhD
?
Ad

Meteor kitchen て?楽々ウェフ?アフ?リ開発