並び順

ブックマーク数

期間指定

  • から
  • まで

321 - 360 件 / 1185件

新着順 人気順

next.jsの検索結果321 - 360 件 / 1185件

  • 週刊誌の動画特典ページをNext.js + Vercelで構築した話

    はじめに KODANSHAtechという会社でFRIDAYの開発案件に携わっています。 FRIDAYは講談社から発行されている写真週刊誌です。スクープ記事が注目されがちですがグラビアも多くやっており、撮影時の動画をウェブで提供しています。本記事では、FRIDAYにおける動画特典ページをNext.js + Vercelでリプレースした事例を紹介します。 上記の画像はユーザーが動画を見るまでのフローを示したものです。ユーザーはFRIDAY紙面に掲載されたQRコードを読み込み、遷移先のページでパスワードを入力します。入力すると、動画を視聴できるようになります。 移行の経緯・技術選定 FRIDAYには古くから存在する月額課金のサービスが存在し、そのサービスに相乗りする形で紙面の動画特典ページを運用していました。しかし、サブスクリプションのサービスにリプレースしたタイミングで、動画特典ページを別アプ

      週刊誌の動画特典ページをNext.js + Vercelで構築した話
    • Next.jsとStripeで定期課金を実装する

      Next.jsで構築中のフロントエンドアプリケーションに定期課金を実装したかった。読んですぐ実装できるように実装方法をメモする。 定期課金の実装にはStripeを使用する。 ※以下では、Next.jsを使った開発環境での実装について記述する。StripeのAPIにシークレットキーを使うため、本番環境ではAPIを叩く処理をサーバーサイド側に実装する必要がある。 Stripe側の設定 まずはStripeのアカウントを作成する。作成したらダッシュボードに移動する。「本番環境」と「テスト環境」があり、アカウント作成直後は「テスト環境」のダッシュボードが開く。テスト環境は実際の支払いは行われず、練習に使用できる。 認証情報をメモする テスト環境のダッシュボードに移動したら、以下の情報をメモする。以下は後ほど環境変数に設定する。 公開可能キー シークレットキー 顧客を作成する 支払いをする「顧客」の情

        Next.jsとStripeで定期課金を実装する
      • スコープとライフタイムで考えるReact State再考

        ReactはじめSPAのStateは大きく2種類、Local State・Global Stateの2種類でおおよそのStateの分類が可能であると考えていました。これに対し会社の先輩から意見をもらって、以下2点に気づきました。 Global Stateには大きく、Client StateとServer Stateの2つがある Stateにはライフタイム(生存期間)が存在し、Client Stateにはスコープ的Globalと時間的Globalの2つが含まれている これらを意識すると、自分はStateの実装を結構感覚的にやってしまっていたなと気づいたので、Stateの分類について改めてまとめてみようと思います。Reactで何かしらのStateを実装する時に、本稿の分類が実装の参考になれば幸いです。 スコープによるStateの分類 まずこれまで自分が認識してたスコープにおけるStateの分類

          スコープとライフタイムで考えるReact State再考
        • 触ってみてわかったNext.jsと比べた時のRemixの特徴

          本日11月23日Remixが正式にリリースされたので早速触ってみました。 Remixとは react-routerというライブラリーの開発元が作ったReact製のフレームワークで、Next.jsと同じようにファイルベースでルーティングできます。 そうなると、Next.jsと一体何が違うのかと感じている人も多いと思うので、 この記事ではNext.jsと比べた時のRemixの考え方の違いをまとめたいと思います。 SSGやISRはサポートしていない Next.jsにはSSGやISRなどあらかじめデータをビルドしておいてその結果をリクエスト時に返すといった機能がありますが、Remixにはありませんでした。 その代わりRemixでは以下のようにページコンポーネントごとにheadersをexportするだけでHTTP headerをコントロールできる仕組みがあるので、そこでCache-Control

            触ってみてわかったNext.jsと比べた時のRemixの特徴
          • 大学生がGitHubのパチモン作ってみた

            リリースしたアプリ リンクはこちら。 アプリを開発したきっかけ エンジニアが筋トレ習慣を身につけるためのアプリを作りたかった エンジニアが愛着の湧くような筋トレ記録アプリがなかった エンジニアが筋トレをするメリット 筋トレ(運動)することで脳のパフォーマンスが上がる(これは職に限らず) 依存先を増やせる(技術力だけでなく「筋肉」にも依存できる) 技術力 + 筋肉 = 最強 どんなアプリ? 主要な機能 筋トレの成果をcommit & merge(記録) mergeした数によって色が変わるカレンダー チーム作成・招待機能 Issue機能 README機能 基本的な使い方 リポジトリ作成 フォルダ・ファイル作成

              大学生がGitHubのパチモン作ってみた
            • Relayで見るNext.jsとSSGの未来

              現在自分が取り組んでいるプロジェクトでは、Next.jsとRelay Modernを採用して開発を進めています。 RelayはFacebookが開発しているGraphQLクライアントライブラリです。 Next.jsの9.3で導入されたgetStaticProps, および9.4で導入されたIncremental Static Regenerationは、Relayと非常に相性がいい、ということを説明します。 Example公式のexampleがすでにあるので見てください。 https://github.com/vercel/next.js/tree/canary/examples/with-relay-modern 以下が典型的なpagesの構成です。 pages/index.js

                Relayで見るNext.jsとSSGの未来
              • 風船屋さんを支える技術。200時間でゼロからweb検索システムを構築した裏側のすべて。(Next.js, Firebase...)

                はじめに こんにちは、フロントエンドエンジニアの多田です。 フロントエンド領域の勉強をはじめて 1 年が経ち、今回個人でゼロからアニプラさん(バルーンショップを経営してる会社)のバルーンサイトの検索システムを作らせていただく機会に恵まれました。 開発にかけられる総時間が 200 時間(つまり工数 1 人月ちょいぐらい、、)というだいぶヤバめなチャレンジングな時間的制約の中、要件定義・デザイン・フロントエンド・バックエンド・インフラ周りまで通して全て 1 人で開発し、完成させることができました。 はじめてfigmaでデザインしてみた アニプラさんより記事を書く許可をいただいたので、開発の裏側の話を記事にまとめます。 開発したサイトはこちら ↓ (今回の記事のメインとなる Next.js で作ったバルーンプラン一覧検索画面) 本記事の内容 (ほぼ)個人開発においての、要件定義 → デザイン →

                  風船屋さんを支える技術。200時間でゼロからweb検索システムを構築した裏側のすべて。(Next.js, Firebase...)
                • Next.js と React-Three-Fiber で構築されたウェブベースのメタバースの形を模索する Sougen がすごい! - WebGL 総本山

                  top 2022 年 03 月 Next.js と React-Three-Fiber で構築されたウェブベースのメタバースの形を模索する Sougen がすごい! 将来的には VR モードにも対応を予定 今回ご紹介するのは、ウェブを中心に据えたメタバースの形を模索するプロジェクト、Sougen のウェブサイトです。 こちらのプロジェクト、日本に拠点がある Utsubo Co., Ltd(@utsuboco)が手掛けているものらしく、かなり本格的で多くの構想を持ったプロジェクトみたいです。 現在公開されているホワイトペーパーを見ているだけでもそのあたりいろいろとうかがい知ることができるのですが、現状すでに WebGL を利用した三次元空間のバーチャルスペースが用意されており、アクセスしているユーザーをリアルタイムに処理しているようです。 リンク: Sougen 説明セクションと 3D コン

                    Next.js と React-Three-Fiber で構築されたウェブベースのメタバースの形を模索する Sougen がすごい! - WebGL 総本山
                  • 一休レストランで Next.js App Router から Remix に乗り換えた話 / Migration from Next.js App Router to Remix

                    一休レストランで Next.js App Router から Remix に乗り換えた話 / Migration from Next.js App Router to Remix

                      一休レストランで Next.js App Router から Remix に乗り換えた話 / Migration from Next.js App Router to Remix
                    • Reactのディレクトリ構成について再考する - ロカオプ技術ブログ

                      概要 みなさんこんにちは。フルスタックエンジニアの高瀬 @takasehiromichi です。 今回は、Reactのディレクトリ構成について再考する機会があったので、記事にしようと思います。 なお、技術スタックについては以下の記事を参照してください。 tech.locaop.jp Reactのディレクトリ構成について 現状は、フロントエンドのsrc配下は以下のような感じになってます。 @interfaces/ (55) api/ (88) components/ (50) context/ (3) pages/ (136) utils/ (22) これ、ロカオプMEO側だけ書いているんですが、プロダクトもだいぶ成長してきまして、それぞれのディレクトリ内のファイル数がすごいことになってます。 (かっこ内の数字がファイル数です。) それぞれのmonorepo内のディレクトリが、こんな感じです

                        Reactのディレクトリ構成について再考する - ロカオプ技術ブログ
                      • Next.jsにSentryを導入した際の課題と解決策について|食べログ フロントエンドエンジニアブログ

                        はじめまして、2021年11月に食べログFE(フロントエンド)チームにジョインした遠藤です。 Next.jsを採用した新規プロジェクトに参画し、Sentryの導入を行いました。本記事ではSentryを導入した際の課題と解決策について記載していきます。 1. はじめに「Sentryとは何か?」、「食べログでSentryを選定した理由」などにご興味がある方はまず下記の記事を読んでみてください。 Sentryは便利ですが以前はアプリケーションに導入するにはいくつかのファイルを作成して、エラーやパフォーマンスをトラッキングするのに様々な設定を行う必要がありました。 そこでSentryが簡単にセットアップができるように@sentry/nextjsでwizardを提供してくれています。 wizardはコマンドを実行するだけでSentryに必要なファイルを自動で生成し、設定までしてくれる便利な代物です。

                          Next.jsにSentryを導入した際の課題と解決策について|食べログ フロントエンドエンジニアブログ
                        • Next.js 13で開発方法はどう変わる?

                          Next.js 13が発表されましたね! この記事ではNext.jsの開発方法が大きく変わるポイントとなる以下の3つの新機能について取り上げます。 Layouts React Server Components Streaming それではさっそく試していくことにしましょう! インストール ウェブアプリの雛形は以下で作成できます。

                            Next.js 13で開発方法はどう変わる?
                          • LiteFS+SQLiteでフルスタックNext.jsアプリケーションを作る

                            なぜLiteFS+SQLiteか 「個人開発のコストはDB次第」でサーバーレス環境でコンピューティングリソースを節約できたけどマネージドDBはまだ高いよ(要約)ということを言っていたら「本番環境でSQLiteを使うといいよ」と何人かの人に教えてもらってLitestreamのことを知った。 LitestreamはDBを読み書きするプロセスを1つにして利用するので、サーバーレス環境でsqliteファイルをパスで参照できて、複数箇所から掴まないように構築すれば条件は整えることができる(Cloud Runのように並行に呼び出してもインスタンスが共有されるサービス+最大サイズを1にしておく、とか)。 Litestreamのみでも便利に使えていたんだけど、プロジェクトをウォッチしていたらその後サーバーを複数台にしてそれぞれのインスタンスで同じ結果を得られたり、書き込み先を適切にハンドリングするデザイン

                              LiteFS+SQLiteでフルスタックNext.jsアプリケーションを作る
                            • SPAはコストが高いのか | foo-x

                              なぜ僕が「SPAはコストが高い」と考えているのか を読みました。 「反論お待ちしています」とのことなので、書いてみます。 結論としては、 コストが低いのは慣れているほうだよ。 どっちも使えるならSPAのほうが低いよ。 です。 前提 元記事で挙げられている前提をまとめます。 用語 SPAとは、クライアント側でビューを構築する方式を指す MPAとは、サーバ側でビューを構築する方式を指す 背景 エンジニアのスキルはあまり高くない 開発期間は1.5年未満 PMFを意識したフェーズであり、チャレンジを繰り返す ログイン機能が存在するサービスを作る コストの定義 エンジニアの採用のしやすさ サービス開発の 初速 サービス開発の 継続性 分業のしやすさ、手伝ってもらいやすさ web標準の挙動の実現のしやすさ セキュアなデータを流出する可能性の高低 バグがあった時の気づきやすさ / 対応のしやすさ ドキュ

                                SPAはコストが高いのか | foo-x
                              • Next.js公式examples集を分類(2021年1月版) - Qiita

                                更新履歴 Next.js公式examples集を分類(2022年7月版) Next.js公式examples集を分類(2021年7月版) Next.js公式examples集を分類(2021年1月版) Next.js公式examples集を分類(2020年7月版) はじめに Next.jsの公式サンプルは前回(2020年7月版)から34本増えて合計268本あります。新たに追加されたサンプルには(new)がついています。(2021/01/10) しかし、このままではどれを見たらいいのかわからないので主観で分類してみました。 (基礎)Next.jsで基礎的な内容を扱っているサンプル。 (公式)公式ドキュメント で説明するのに使われているサンプル等。 ※今回の更新で一番目についたのはwith-mysqlで、その他DB関連も多く追加されています。 degitを使ってソースのみを取得したい(npx

                                  Next.js公式examples集を分類(2021年1月版) - Qiita
                                • GitHub - frouriojs/frourio: Fast and type-safe full stack framework, for TypeScript

                                  You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session.

                                    GitHub - frouriojs/frourio: Fast and type-safe full stack framework, for TypeScript
                                  • Next.jsアプリをLambda@Edgeで超簡単にSSRできるserverless-next.jsのご紹介 - Qiita

                                    Next.js をSSR対応でホスティングしたいなら Vercel(旧Now) を使うのが定石だと思います。 Next.jsとVercelはどちらも Vercel社 (旧ZEIT社) が開発しているため一緒に使った際のDXは大変良いものです。 しかし、AWS内で完結できるならそうした方が嬉しい事が多いのでいい方法はないかと調べた所、 serverless-next.jsというServerless Componentのプラグインがよさそうだったのでご紹介したいと思います。 以下のドキュメントの要点をまとめつつ、掘り下げたものです。 https://github.com/danielcondemarin/serverless-next.js/ https://serverless.com/blog/serverless-nextjs/ serveless-next.js 機能と特徴 SSRをL

                                      Next.jsアプリをLambda@Edgeで超簡単にSSRできるserverless-next.jsのご紹介 - Qiita
                                    • App Router移行時に0.01%の確率でCSR遷移が404エラーになる - とろろこんぶろぐ

                                      概要 Pages Router から App Router 移行時に一部既存の画面での CSR 遷移が 404 エラーになりました。 この件について調査したので、記事にしてまとめておきます。 前提 今回発生したバグの内容の再現環境の特徴として、以下が挙げられます。 Next v13.5.6 Base path の設定あり App Router と Pages Router が共存している Base Path について Base Path の設定は next.config.js に以下のような記載があると、 module.exports = { basePath: '/base', } /pages/examples.tsx で配置したページコンポーネントが、 URL /base/examples で閲覧できるようになるものです。 また以下のような Link コンポーネントは、自動的に Ne

                                        App Router移行時に0.01%の確率でCSR遷移が404エラーになる - とろろこんぶろぐ
                                      • だれでもAIメーカーの技術スタックとか

                                        主な使用サービス/ライブラリは以下です。 Next.js …アプリケーションのフレームワーク Vercel …デプロイ先 PlanetScale …サーバーレスDB(MySQL)。ORMにはPrismaを使用 Upstash …サーバーレスでRedisを使えるやつ Cloudflare R2 …画像のアップロード先 Open AI API ここに落ち着くまでに紆余曲折あったので、少し詳しく説明しておきます。 Next.js on Vercel 利用しているフレームワークはNext.jsです。クライアントからのデータの取得・更新リクエストはAPI Routesから受け付けるようにしています。 アプリケーションのデプロイ先はVercelにしました。最初はNext.js on Cloudflare Workersをやろうとしたのですが、辛い部分が多くて断念しました。 余談)なぜNext.jsをC

                                          だれでもAIメーカーの技術スタックとか
                                        • AMP におけるパフォーマンス改善

                                          はじめまして、ホットペッパービューティーコスメ(以下 HPBC) の Web フロントエンドエンジニアとして学生アルバイトをしている三島です。3 ヶ月間のアルバイト期間で、案件に関わる機能開発や SEO 施策の検討と実装、パフォーマンス改善など様々な業務に取り組ませていただきました。本記事ではその中でも、私が取り組んだ HPBC におけるパフォーマンス改善について紹介します。 目次 1. はじめに 2. 想定読者 3. AMP とは 4. パフォーマンス改善の前提知識 5. 現状計測 6. 問題特定 7. 問題解決 8. 今後 9. まとめ はじめに HPBC の開発プロジェクトでは、Web ページを閲覧してくれるユーザーにとってページが完全に表示されるまでのスピード、つまり「パフォーマンスが大事である」という認識をチーム全体で共有しています。Web サービスのプロダクトは、機能の追加・改

                                            AMP におけるパフォーマンス改善
                                          • Next.js の Zod 活用術

                                            本年は Next.js + バリデーションライブラリの Zod をよく利用し、Zenn でもいくつかの関連記事を投稿しました。本稿では、この組み合わせならではの TIPS を紹介します。記事で紹介するサンプルは以下に置いています。 リクエスト検証に便利な Zod Next.js で getServerSideProps を使用すると、リクエスト検証をサーバーサイドで行えます。例えばセッションに保持している値の検証はバリデーションライブラリの Zod を使用して、次のようなコードで実現できます。 export const userSchema = z.object({ name: z.string(), email: z.string(), }); export const getServerSideProps = async (ctx) => { const sess = await ge

                                              Next.js の Zod 活用術
                                            • Next.js + SvelteによるnoteのフロントエンドApp分割|note株式会社

                                              ※ この記事は2021年6月21日に行われた「進化するフロントエンド2021 − 4プロダクトから学ぶSPA/PWAの技術と実践−」の登壇を文字起こししたものになります noteのフロントエンドの歴史 ではまず自己紹介をさせていただきます。フロントエンドエンジニアの山形と申します。よろしくお願いします。 去年の3月に入社したので、noteには1年3ヶ月くらいいます。趣味でコーヒーの焙煎とかやっています。 今回はnoteが抱えているフロントエンドの課題をどう解決していったのかを話していきたいと思います。 最初にnoteが今までどうやって実装されていたのか、その歴史を説明していきます。 初期のnoteはRuby on Railsのアセット上に構築されたSPAサイトで、フロントはAngularJSとCoffeeScriptで書かれていました。 この構成はかなりの問題を含んでいました。 1つ目はS

                                                Next.js + SvelteによるnoteのフロントエンドApp分割|note株式会社
                                              • Next.js(SG) + SWR + Recoil + TypeScript でAPIグルメ検索(自動更新機能付き)

                                                私はこうして文章を書いていますが、去年書いた文章はすべて不満であり、いま書いている文章も、また来年見れば不満でありましょう。それが進歩の証拠だと思うなら楽天的な話であって、不満のうちに停滞し、不満のうちに退歩することもあるのは、自分の顔が見えない人間の宿命でもあります。自分の文章の好みもさまざまに変化して行きますが、かならずしも悪い好みから良い好みに変化してゆくとも言いきれません。それでもなおかつ現在の自分自身にとって一番納得のゆく文章を書くことが大切なのであります。 ―― 三島由紀夫『文章読本-新装版』 (中公文庫) p.195 制作したもの。 API を用い、グルメ検索ページを作ります。 使用する API は、リクルート社のホットペッパーグルメ グルメサーチ API です[1]。 主な技術構成は、 Next.js / Static Generation SWR[2] Recoil Ty

                                                  Next.js(SG) + SWR + Recoil + TypeScript でAPIグルメ検索(自動更新機能付き)
                                                • 76. モダンウェブフロントエンド(2022)に至る歴史 - React Server Component、SSR Streaming w/ morishin127 | fukabori.fm

                                                  MP3ファイルをダウンロード 内容紹介 2022年のモダンウェブフロントエンドまでに至る歴史、SPA、CSR、SSR、SSR Streaming、React Server Component などについて語っていただいたエピソードです。 出演者 話したネタ モダンウェブフロントエンド勉強会を開催しました そもそもWebページのダウンロードって、どう始まった? JavaScriptがマウスカーソルをキラキラさせていた時代 Ajaxの登場や、jQuery フロントエンドMVC、Backbone.js、Knockout.js Reactは何が革命的だったのか? 手続き型の実装は何が辛かったのか? SPA(Single Page Application) MPA(Multi Page Application) CSR(Client Side Rendering) サーバーサイドがJSONを返す時代

                                                    76. モダンウェブフロントエンド(2022)に至る歴史 - React Server Component、SSR Streaming w/ morishin127 | fukabori.fm
                                                  • PWAとクラウドゲーミングの現状そしてPWAとOOParts

                                                    「PWA Night Conference 2021」にて発表した資料になります https://conf2021.pwanight.jp/ タイトル:PWAとクラウドゲーミングの現状そしてPWAとOOParts Pitch: https://app.pitch.com/app/public/player/75d8b9b3-b9a2-4cce-a132-aba3dc112ffd OOParts: https://oo.parts

                                                      PWAとクラウドゲーミングの現状そしてPWAとOOParts
                                                    • Next.jsのドキュメントを全部読んでみた - $shibayu36->blog;

                                                      最近Next.jsのドキュメントが更新されて、APIリファレンスが付くなど読みやすくなったので、この機会に全部読んでみた。メモを置いておく。 https://nextjs.org/docs/routing/introduction#dynamic-route-segments pages/post/[…all] → /post/* (/post/2020/id/title) こんなことできるのか!ただ全部吸い込まれるのは使いづらそう https://nextjs.org/docs/routing/shallow-routing router.pushにshallowオプションを加えると、getInitialPropsを実行しないレンダリングができる。ページ内でクエリやハッシュフラグメントを変えるなどで便利に使えそう import { useEffect } from 'react' imp

                                                        Next.jsのドキュメントを全部読んでみた - $shibayu36->blog;
                                                      • App Router への移行は「改善」となり得るのか?/ Can migration to App Router be an improvement

                                                        フロントアーキテクチャ改善NIGHT https://hireroo.connpass.com/event/310150/

                                                          App Router への移行は「改善」となり得るのか?/ Can migration to App Router be an improvement
                                                        • JamstackプラットフォームのLayer0へNext.jsのアプリをデプロイしながら試す

                                                          Layer0というJamstackプラットフォームを試してみた記事です。 Jamstackプラットフォームが何かは表現しにくいですが、Netlify、Vercel、Cloudflare PagesみたいなSPAなアプリケーションとかをホスティングしてくれるサービスです。 Cloudflare Pages・Vercel ・Netlify の違いや使い分けをまとめる Layer0はMoovweb XDNという名前のプロダクトでしたが、2021年4月にLayer0へリブランディングしています。 Moovweb is officially Layer0! 📝 XDN = Experience Delivery Network Layer0は、Netlify、Vercel、Cloudflare PagesのようにSPAアプリケーションをホスティングできるプラットフォームです。 他のプラットフォーム

                                                            JamstackプラットフォームのLayer0へNext.jsのアプリをデプロイしながら試す
                                                          • Blitz.js、Next.js辞めるってよ - Qiita

                                                            Blitzは、ざっくり言うとReact版Ruby on Railsです。 Reactの面倒なところを全てすっ飛ばし、技術選定なんてどうでもいいから今すぐアプリを動かしたいんだよ、という要望を叶えるのに適したフルスタックフレームワークです。 概要はBlitz.js - React on Rails、実際の使い方はBlitz.jsチュートリアル:投票サービスを15分で作ってみるあたりを見てもらうとして、とにかくチュートリアルに従ってコマンド打てばとりあえず動くものが一瞬でできるとかそんなかんじです。 技術的にはReact + Next.jsで動いています。 ということだったのですが、先日どうも雲行きの怪しいRFCが提出されました。 以下は[RFC] Time to maintain a fork of Next.js?の紹介です。 なお提案者のBrandon BayerはBlitz.jsの作者

                                                              Blitz.js、Next.js辞めるってよ - Qiita
                                                            • 推しの歌配信を音楽アプリのように聴けるWebサービスを作ってみた

                                                              成果物 ソースコード 動くもの 出来ること 曲名で検索 動画視聴 連続再生 シャッフル リピート シーク 再生/停止 前後スキップ 音量調整 スクショ Desktop Mobile 経緯 推しが毎週末に歌枠配信をしてくれている → 動画数が多くなり、あの曲どの配信で歌ってたっけ?となる → 検索できるサービス作ろう! → どうせならリピート再生とか出来る音楽アプリみたいにしよう!! というざっくり経緯説明 歌部分だけを編集で切り抜いて聴くという手もありますが それだと元動画へ再生数がいかないので推しに対して申し訳ない。。 これは元動画を再生しつついい感じに曲を聴きけたらいいなという自分の願望を叶えたものです💪 つかったもの Next.js react で作りたかったので next にしました。 remix にしなかった理由としては、別に SSR したいわけではなかったからです! 正直全部

                                                                推しの歌配信を音楽アプリのように聴けるWebサービスを作ってみた
                                                              • Next.js で始める gRPC 通信 - 30歳からのプログラミング

                                                                サーバ・クライアント間の通信を gRPC で行う場合、インターフェイスを定義した共通のファイルから、サーバとクライアント双方のコードを生成することができる。 この記事では、インターフェイスの定義ファイルを作成するところから始めて、gRPC を利用した単純なウェブアプリを作っていく。 gRPC についての概念的な説明などは扱わず、実際に手元で動くウェブアプリを作ることで、gRPC を使った開発についてイメージしやすくなることを意図している。 Next.js では API Routes を使って API サーバを作ることができるが、それを gRPC クライアントとして実装する。 そのため、リクエストの流れは以下のようになる。 Frontend == (REST) ==> API Routes == (gRPC) ==> gRPC Server 動作確認は Node.js のv16.13.2で行

                                                                  Next.js で始める gRPC 通信 - 30歳からのプログラミング
                                                                • 設定0行でNext.jsとNuxt.jsの内部リンクを型安全に取得できる最強ライブラリ「pathpida」

                                                                  Qiita TypeScript Advent Calendar 2020 最終日の記事です。 TypeScript製の内部リンク取得ライブラリ「pathpida」 最近ちょっと話題になった frourio と aspida を開発したSolufaです。 Zenn初投稿を記念して、新作ライブラリ「pathpida」を紹介します。 と言っても完全な新作ではなく、初回リリースからもうすぐ1年が経ち月間DL数は1,000を超えています。自分が関わる案件だけで静かに検証を続け、ようやっと今週全面リニューアルして一般告知が出来るようになりました! pathpidaはNext.jsとNuxt.jsそれぞれのルーティング規約に最適化しているので設定不要で型安全に使うことが出来ます。 どんな問題を解決するのか 以下のように/post/1 に遷移するLinkがあるとします。 import Link from

                                                                    設定0行でNext.jsとNuxt.jsの内部リンクを型安全に取得できる最強ライブラリ「pathpida」
                                                                  • モーダルの開閉状態を URL で管理する

                                                                    よくあるモーダルの実装について考えてみましょう。モーダルは名前のとおり、現在開いているか閉じているかの状態(モード)があります。状態を管理するときには、React の useState フックを利用する方法がまっさきに思い浮かぶのではないでしょうか? import { useState } from "react"; import Dialog from '@ui/components/Dialog'; import Button from '@ui/components/Button'; const App = () => { const [isOpen, setIsOpen] = useState(false); return ( <> <Button variant="outlined" onClick={() => setIsOpen(true)}> Open dialog </B

                                                                      モーダルの開閉状態を URL で管理する
                                                                    • Next.js の Jest / React Testing Library でモック (mock) を含めた render で開発効率を高めよう | fwywd(フュード)powered by キカガク

                                                                      Next.js でテスト駆動開発を進める時に必ず関門となる各種機能のモックに関するベストプラクティスを紹介します。 今回は Router などの機能をモックした render を作成して、共通のコンポーネントとして利用することを目標としましょう。 バージョン情報 Node.js:15.11.0 React:17.0.2 Next.js:10.2.2 Jest:26.6.3 React Testing Library @testing-library/react:11.2.5 Router を使用した際の問題点 next/router

                                                                        Next.js の Jest / React Testing Library でモック (mock) を含めた render で開発効率を高めよう | fwywd(フュード)powered by キカガク
                                                                      • Introducing OG Image Generation: Fast, dynamic social card images at the Edge – Vercel

                                                                        We’re excited to announce Vercel OG Image Generation – a new library for generating dynamic social card images. This approach is 5x faster than existing solutions by using Vercel Edge Functions, WebAssembly, and a brand new core library for converting HTML/CSS into SVGs. Dynamic with limitsThe engagement rate of Tweets that embed a card is 40% higher. While creating and sharing static social image

                                                                          Introducing OG Image Generation: Fast, dynamic social card images at the Edge – Vercel
                                                                        • Next.js 13 app directory で記事投稿サイトを作ってみよう

                                                                          Next.js 13 から新たに App Router と呼ばれる機能が追加されました。これは従来の pages ディレクトリとは異なるレイアウトシステムです。App Router には以下のような特徴があります。 ルーティング:pages ディレクトリではページのルーティングはファイル名によって決まっていました。例えば pages/about.js というファイルは /about というパスに対応します。App Router ではルーティングに対応するファイルは page.js という固定の名前になります。/about というパスに対応するファイルは app/about/page.js という名前になるのです。page.js 以外にも共通されたレイアウトを担当する layout.js、ローディング UI を表示する loading.js などさまざまな特殊なファイルが存在します。 レンダ

                                                                            Next.js 13 app directory で記事投稿サイトを作ってみよう
                                                                          • レガシーフロントエンドをNext.jsにリプレイス 「開発生産性の向上」を感じさせてくれた5つのこと

                                                                            「Developers Meetup 急成長ベンチャーが向き合う『開発生産性』」は、開発組織や事業フェーズの異なる株式会社Another works・株式会社SmartHR・株式会社スタメンの3社が、開発生産性について語り尽くすイベントです。ここで株式会社スタメンのかみお氏が登壇。フロントエンドのリプレイス前にあった課題と、「生産性が向上した」と感じさせてくれた5つのことについて紹介します。 かみお氏の自己紹介 かみお氏:「レガシーフロントエンドをリプレイスしたら開発生産性が向上しました」というタイトルでお話をします。よろしくお願いします。 まず自己紹介を簡単にさせてください。2021年1月にスタメンに入社して、主にフロントエンドを担当している「かみお」です。現在は、今回お話しするNext.jsへのリプレイスのプロジェクトに参加中です。今回初登壇なのでお手柔らかにお願いします。 今日は、リ

                                                                              レガシーフロントエンドをNext.jsにリプレイス 「開発生産性の向上」を感じさせてくれた5つのこと
                                                                            • 【Next.js】eslint + pretteirをやめてBiomeにした話

                                                                              はじめに Next.jsなどReactのプロジェクトにはlinterとformatterが必須でeslintとpretteirを使うと思います。 しかし、導入するとなると考慮すべき点や面倒な点が結構あります。 以下は一例です。 eslintとprettierは設定が複数あり、プラグインのインストールが必要 eslint-plugin-prettierを使えば、pretteirがなくてもformatterは実現できるため、そもそもprettierいるのか問題 逆にeslintはlinterとしての役割のみにして、formatterの機能は持たせたくない そこででてくるのがBiomeです。 Biomeとは 一言でいうとeslintとprettierを一つにしたものです。 以下、公式の引用とページです。 Biome はWebプロジェクトのための高性能なツールチェーンであり、プロジェクトの健全性を

                                                                                【Next.js】eslint + pretteirをやめてBiomeにした話
                                                                              • 日経の新媒体における、既存資産を活かすフロントエンド技術選定 — HACK The Nikkei

                                                                                こんにちは、Web チームの井手です。 この度 NIKKEI Professional Media(通称 Promedia) という新媒体をリリースしました。各トピックに特化したメディアで、現在は 日経モビリティ、日経GX、日経テックフォーサイトが展開されています。 これまで日経 Web チームでは特定のFWを利用せず、長年JSXをテンプレートエンジンとした独自FWを開発して、モノレポとして運用していました。これはチューニングの余地を自分で確保することや、自分たちのチームにあった規約を作りやすくするための選択です。しかし Promedia の開発は電子版本体のリリースサイクルと外れるためにモノレポの中に入れたくないことや、長年の開発の負債を引き継ぎたくないこと、なによりNextJSエコシステムの発達によって僕たちの要求をカバーできつつあることから、試験的にNextJSを採用して開発してみま

                                                                                  日経の新媒体における、既存資産を活かすフロントエンド技術選定 — HACK The Nikkei
                                                                                • Cloudflare WorkersはSSRだけではありませーん! - ゆーすけべー日記

                                                                                  Cloudflare Workersが話題になって「CDNのエッジでSSRできるのすごくない?」ってなりがちです。 たしかにものすごいのですが、Cloudflare WorkersはSSRをするためだけのものではありません。 SSGしたページに機能を追加したり、CDNのバックエンドのRequest/Responseのハンドリングに使えます。 今回はCloudflare PagesというSSGのサービスでWorkersを使えることを紹介しつつ、WorkersのSSR以外のユースケースについて考えてみます。 SSRできると嬉しい Cloudflare Workersが話題になったのは、先日「D1」がリリースされる以前にもありました。 「RemixがCloudflare WorkersをサポートしてSSRできる!」って件もその1つです。 こちら、Zennのcatnoseさんの記事のインパクトが大

                                                                                    Cloudflare WorkersはSSRだけではありませーん! - ゆーすけべー日記

                                                                                  新着記事