Introducing Cloudflare Pages: the best way to build JAMstack websites

この時期は、世界中の様々な文化で最も大切な人々と祝い、贈り物をし合う時期です。この精神に則り、当社ではこの時期に、過去10年間にわたってCloudflareをサポートしてくれている開発者コミュニティに恩返しをしようと考えました。

本日、Cloudflare Pagesを発表できることを嬉しく思います。これは、お客様のJAMstackサイトを構築し、ホストするための高速で安全かつ無料の方法です 。

現在、アイデアをWebサイトで表現するための方法は善意でできています

Webサイトは、私たちがWeb上で自分自身を表現する方法です。趣味でブログを書いていても、何百万人もの顧客を抱える大企業でも、それは変わりません。140文字280文字の字数制限を超えて人々にことばを届けたいなら、Webサイトは最適な場所です。

フロントエンドの開発者として、この表現を生き生きとしたものにするのはお客様の仕事です。そして間違いを犯さないことも。お客様は、多くのフロントエンドフレームワーク、ツーリング、そして静的サイトジェネレーターを自由に使えますので、仕事をするにはとても恵まれた時代です。

それはもちろん、お客様の仕事を世界に公開する準備が整う、その直前までに当てはまることです。少しまずいことが起こり得るのはそのあとです。

この時点で、ソースにコミットするのではなく、物事をローカルに保ち続けることは...無責任になり始めます。しかし、それでは、迅速に反復を適用し、勢いを維持するにはどうすればよいのでしょう?物事を変更する場合、その変更が失われないようにする必要があります。つまり、現在本番環境にデプロイされている内容と同期を維持しながら、ソース管理に保存する必要があります。

優れた解決策はありません。

大規模な組織にいる場合は、DevOps 部門がそうした作業に専念している可能性があります。継続的インテグレーション (CI) ツールを使用したデプロイの自動化です。

しかし、ほとんどのCIツールは非常に面倒であり、正当な理由により、組織はスタックやセットアップに関係なく、自動化をカスタマイズできます。ですが、これらの作業は、Webサイトを開発する目的でWebプロジェクトを届けるだけのためにやるには、不必要でフラストレーションが高まる作業に思えます。YAMLファイルの設定コマンドを追加または削除し、各構築が実行されるまで数分待ち、それぞれのCIの神様たちにこれらが正しいコマンドであることを祈ります。絶望的に同じ構築を何度も何度も行って、今度こそ上手くいくように祈ります。

多くの場合、何時間もかかります。このプロセスがあなたが仕事を完璧にこなす邪魔をするのです。

Cloudflare Pages:フロントエンド開発者に最善の力を発揮させる

Cloudflareは、もっといい方法があると考えました。

Cloudflare Pagesでは、既存の開発ワークフローにデプロイメントを結び付けることで、すべてのステップを簡素化しました。

GITとのシームレスな統合と構築を内蔵

Cloudflare Pagesを使えば、お客様は、レポを選択し、どのフレームワークを使用しているかを当社に教えてくださるだけでよいのです。当社がお客様に代わってCIに関する処理を担当します。お客様はこれまでと同様に変更内容をgit commitとgit pushすればよいのです。当社がお客様のためにそれらを構築し、デプロイします。

プロジェクトが成長するにつれて、リスクも大きくなり、協力者の数も増えます。

本番環境にあるサイトでは、変更を徹底的に確認する必要があります。レビューアーとして、コードを見て、赤いフラグをスキミングするだけでは不十分です。徹底的にレビューするには、変更をコミットするか、 git stashし、ローカルにプルダウンして、実際に動作することを確認する必要があります。コードだけを見てもすべてを把握することはできません!

チームの他の開発者が唯一の利害関係者ではありません。変更を発表する前に、フィードバックを提供したいと考える、デザイナー、マーケティング担当者、プロジェクトマネージャーがいます。

固有のURLのプレビュー

Cloudflareページでは、各コミットは固有のURLを取得します。プレビューURLを使用すると、ブランチをプルダウンするオーバーヘッドなしに、有意義なコードレビューを簡単に取得できます。また、最新のイテレーションに関するプロジェクター、デザイナー、マーケティング担当者からのフィードバックをより簡単に取得し、モックとコードのギャップを埋めることができます。

無限のステージング

「私がステージングを引き継いでもよいですか?」は、馴染みのある質問のように聞こえるかもしれません。Cloudflare Pagesでは、各機能ブランチは独自の一貫したエイリアスを持つため、最新の変更でも一貫したURLを保つことができます。

プレビュー環境と本番環境では、すべてのフィーチャーブランチとプレビューリンクがプレビュー変数を使用して構築されるため、実稼働データに影響を与えることなく実験できます。

本番環境にデプロイする準備ができたら、更新された本番環境変数を使用して本番環境に再デプロイします。

すべてのお客様のためのコラボレーション

コラボレーションは、素晴らしいWebサイトや製品を構築するための鍵です。セキュリティ企業として、お客様には決してパスワードと資格情報を共有してほしくありません。だからこそ、マルチユーザーアクセスをユーザーの皆様に無制限で無料で提供しています。お友達をぜひご招待してください!

最新の基準を備えた最新のサイト

私たちは皆、早すぎる最適化は重い罪であることを知っていますが、プロジェクトがお客様の目の前にあると、可能な限り最高のパフォーマンスを実現したいと考えるものです。それが成功した場合、利用可能なものにしたいと思うでしょう。

現在では、こんなとき、パフォーマンスの最適化(Lighthouseのスコアで100点を目指す)と、数人から数百万人のユーザーへのスケーリングに時間を費やさなければなりません。

しかし、幸いなことに、当社には200のデータセンターがあり、グローバルネットワークを実行することに関する心得もあるので、お客様をサポートすることができます。

Pagesを使用すれば、お客様のサイトは当社のエッジに直接デプロイされ、お客様からわずかミリ秒の距離で、グローバルに展開できます。

最新のWeb標準をHacker Newsで読むのは楽しいのですが、自分の手で実装するのは楽しくありません。Cloudflare Pagesでは、IPv6、HTTP/3、TLS 1.3、など、すべて最新の画像フォーマットを使用しており、お客様が時代の先端にいられるように、お手伝いします。

最後に、もう一つ

開発者とそのチームが Cloudflare Pages を使用して、最高の静的サイトで一緒にコラボレーションできることを本当に光栄に思います。でもひとつだけ私たちが気になっている点があります。どうして静的サイトだけに留まっているのでしょう?

本格的なダイナミックなアプリケーションの構築を同じように簡単にできるとしたらどうでしょう ?

APIはJAMstackの中核部分ですが、現在では主に堅牢なAPIエコノミーの開発者がアクセスできるようになっています。それは素晴らしいことですが、必ずしも十分ではありません。独自のAPIを構築し、ユーザーやアプリケーションデータを保存する場合は、サードパーティのAPI以上のものが必要です。では、どうすればいいのでしょう?

当社では、すでにグローバルなサーバーレスプラットフォームを構築していて、これがお役に立てるかもしれません。Cloudflare Workersです。Workersを使用すると、フロントエンドの開発者は、拡張可能なバックエンドをフロントエンドと同じ言語であるJavaScript でアプリケーションに簡単に記述できます。

今後数か月間、WorkersとPagesをシームレスなエクスペリエンスに統合する作業を進めます。それはPagesと同じように動作できるようになる予定です。お客様はコードを書いて、git pushすれば、当社がデプロイします。唯一の違いは、フロントエンドだけでなく、バックエンドにもなることです。明確にしておくと、これはステートレス機能のためだけのものではありません。Workers KVとDurable Objectsを使用すると、このプラットフォームでは本当にたくさんのWebアプリケーションを実際に構築できるようになるのです。

当社はPagesの未来について、ワクワクしています。これを支えるCloudflare Workersとともに、Web上で新しいアプリケーションがどのように構築されるのかについて、Pagesがどのような大胆なビジョンを表すのかについて、楽しみにしています。

でも贈り物には受け取る人が必要なのです。お客様に贈り物をぜひ受け取ってほしいと考えています。ベータ版にサインアップして Cloudflare Pages をぜひお試しください!

追伸:人材募集中!

当社でWeb開発の未来を一緒につくりませんか?ぜひご応募ください.