Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Scully: Angular SSG
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
puku0x
August 19, 2020
Technology
230
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Scully: Angular SSG
puku0x
August 19, 2020
More Decks by puku0x
See All by puku0x
新メンバーのために、シニアエンジニアが環境を作る時代
puku0x
0
1.5k
Agent Skills 入門
puku0x
0
1.9k
ファインディにおけるフロントエンド技術選定の歴史
puku0x
2
2.1k
生成AIではじめるテスト駆動開発
puku0x
0
1.4k
実践!カスタムインストラクション&スラッシュコマンド
puku0x
2
3.3k
Nx × AI によるモノレポ活用 〜コードジェネレーター編〜
puku0x
0
1.6k
ファインディにおけるフロントエンド技術選定の歴史
puku0x
2
300
ファインディでのGitHub Actions活用事例
puku0x
9
3.9k
Findyの開発生産性向上への取り組み ~Findyフロントエンドの場合~
puku0x
0
480
Other Decks in Technology
See All in Technology
DevOps Agentで始めるAWS運用 〜フロンティアエージェントが変える運用の現場〜
nyankotaro
1
340
AmazonRoute 53ではじめてのドメイン取得!HTTPS化までの道のりを整理してみた
usanchuu
3
120
中期計画、2回作ってみた ~業務委託と正社員、両方の視点から~
demaecan
1
490
LLMにもCAP定理があるという話
harukasakihara
0
260
サプライチェーンセキュリティの空白地帯 - 信頼できる”依存性”の未来を考える
rung
PRO
2
800
Amazon Bedrock AgentCore ワークショップ JAWS UG TOHOKU / amazon-bedrock-agentcore-workshop-jawsug-tohoku-2026
gawa
9
500
noUncheckedIndexedAccess、3時間、1万円。 / noUncheckedIndexedAccess, 3 Hours, 10,000 JPY.
kaonavi
1
340
作って終わりにしない タイミーのセマンティックレイヤー育成の現在地
chanyou0311
2
1.6k
Platform Engineering as a Product: Criteria for Improvement and Multi-Tenant Design
kumorn5s
0
530
価格.comをAI駆動で全面刷新する ー 30年分の技術的負債を返し、次の30年の土台をつくる ー / AI Engineering Summit Tokyo 2026
tkyowa
51
58k
2026.06.13_AI時代に事業会社が「SIer出身エンジニア」を求める理由 / Why Businesses Seek Engineers with a System Integrator Background in the AI Era
jumtech
0
960
「嘘をつくテスト」の失敗例から学ぶ 良いテストコード #frontend_phpcon_do
asumikam
0
590
Featured
See All Featured
Mobile First: as difficult as doing things right
swwweet
225
10k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
320
The Illustrated Children's Guide to Kubernetes
chrisshort
51
52k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
0
1.6k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Navigating Team Friction
lara
192
16k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
From π to Pie charts
rasagy
0
200
sira's awesome portfolio website redesign presentation
elsirapls
0
270
A designer walks into a library…
pauljervisheath
211
24k
Abbi's Birthday
coloredviolet
2
8k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
550
Transcript
Scully: Angular SSG ng-japan OnAir #23
Noriyuki Shinpuku ng-fukuoka organizer VEGA corporation Co., Ltd. @puku0x 2
@puku0x SSG流行ってる 3 Gridsome VuePress Nuxt.js Next.js Gatsby
@puku0x (Angularで)SSGやりたみ... 4 Gridsome VuePress Nuxt.js Next.js Gatsby
@puku0x 5 https://scully.io/
@puku0x Scully • Angular用のSSG(静的サイトジェネレータ) • ところで何て発音するの? ◦ スクーリー、スクリー、スカリー (聞く限りではいろいろ) 6
@puku0x 仕組み • Angularアプリケーションを Puppeteer で実行 ◦ HttpClientなどの通信の完了を確認して出力 ◦ PLATFORM_IDは常にブラウザー
• 実行時はプリレンダされたHTML → 読み込み完了で Angularアプリケーションに置き換わる 7
$ ng new my-app --routing $ cd my-app $ ng
add @scullyio/init インストール 8
$ ng generate @scullyio/init:blog ブログ追加 9
$ ng build --prod $ npm run scully $ npm
run scully:serve Angular distribution server started on “http://localhost:1864/” Scully static server started on “http://localhost:1668/” 実行 10
$ npm run build -- --watch 開発 11 $ npm
run scully -- --watch
import { setPluginConfig } from '@scullyio/scully'; setPluginConfig('md', { enableSyntaxHighlighting: true
}); シンタックスハイライト 12
import { ScullyConfig } from '@scullyio/scully'; export const config: ScullyConfig
= { … defaultPostRenderers: ['seoHrefOptimise'], }; リンクに末尾スラッシュ追加 13
$ npm i -D scully-plugin-disable-angular $ ng build --prod --statsJson
Angular無効化 14 import { ScullyConfig, setPluginConfig } from '@scullyio/scully'; import { DisableAngular } from 'scully-plugin-disable-angular'; setPluginConfig(DisableAngular, 'render', { removeState: true }); export const config: ScullyConfig = { defaultPostRenderers: [DisableAngular], };
@puku0x PWA化 • @angular/service-workerとの組み合わせに課題 ◦ https://github.com/scullyio/scully/issues/529 ◦ https://github.com/angular/angular/issues/16051 • 他の方法(Workbox等)での実装を推奨
15
@puku0x 16 https://github.com/puku0x/puku0x.net
@puku0x Scullyの今後 • ドキュメント更新 • 公式プラグイン拡充 ◦ Google Analytics、LogRocket、Sentry ◦
scully-plugin-disable-angularと似たプラグインも? • Angular以外も対応予定 17
@puku0x まとめ • Scullyを使うと簡単にSSG導入できる ◦ Angular対応なので既存の資産が活かせる ◦ エコシステムはまだ改善の余地あり ◦ ベータ版なので貢献のチャンス!
◦ https://scully.io/ 18
@puku0x 19 https://www.vega-c.com/recruit/ 採用のお知らせ
@puku0x Thank you! @puku0x Noriyuki Shinpuku