タグ

ブックマーク / zenn.dev/yusukebe (11)

  • Web標準のバックエンドアプリのテスト

    ここで言う「Web標準のバックエンドアプリ」とはCloudflare Workers、DenoBunなどのWeb標準をサポートするランタイム上で動くWebアプリです。もしくは、Node.jsでもWeb標準のAPIをサポートしているので、これから紹介するアプリとテストコード自体はNode.js上も動きます。 これらのテストを書く、実行するのは実にシンプルで、拍子抜けしてしまうほどです。ですが、現在、20,000行あるHonoのテストコードは、これらのやり方と全く同じ方法を取っています。注目すべき点は、実際のサーバーを立ち上げることがなく、抽象化されたリクエストとレスポンスのやり取りを試験するだけで、品質が保たれる点です。Honoのテストでは、ランタイムによっては一部実サーバーを立ち上げますが、コアの20,000行ではサーバーを立ち上げていません。この抽象化はPythonのWSGI、Ruby

    Web標準のバックエンドアプリのテスト
  • RAGを作って学ぶCloudflareスタック

    生成AIをよりよくする手法の一つにRAG = Retrieval-Augmented Generationがあります。これは単純な仕組みから作ることができて、効果的で面白いです。そして、Cloudflare Workersを中心としたCloudflareスタックで実現できます。やってみると、Cloudflareを使ったアプリケーション作成に必要なエッセンスをいくつも体験できることが分かりました。そこ今回は、シンプルなRAGアプリを作りつつ、Cloudflareスタックを学んでみましょう。 リポジトリ 今回扱うコードや関連する例は以下のリポジトリでみれます。 CloudflareスタックでRAGを作るとは? RAGの実装方法を説明します。いくつかありますが、簡単な方法にします。 LLMと会話をするにはsystem、userというロールで以下のようなパラメータを渡します。 app.get('/

    RAGを作って学ぶCloudflareスタック
  • Hono Conference 2024 - Our first step

    2024年6月22日(土)に第一回の「Hono Conference」を東京で行いました。Honoに焦点当てたトークのみで構成されるイベントとしては初の試みです。ですので、"Our first step"という副題をつけました。100人が参加し、イベントは大成功に終わりました。 この記事ではHono Conferenceについてレポートしたいと思います。 会場 会場はdocomo R&D OPEN LAB ODAIBAさんにお借りました。開放感がありとても素敵な会場でした。ありがとうございます! 参加者 以下のページで参加者を募りました。 定員90人のところ、140人の希望者がいました。人気のほどが伺えます。当日は、発表者も合わせて100人が参加しました。 Honoを以前に使ったことがあるか?という質問にほぼ全ての人が手を挙げていたのが印象的でした。 トーク イベントは午後1時から4時30

    Hono Conference 2024 - Our first step
  • Cloudflare WorkersとKVを使ってパフォーマンスを上げる話

    先日行われたCloudflareのDeveloper Week 2024の記事の中にPicsartというサービスの事例記事がありました。 よくよく読んでみると「Cloudflareを導入したらパフォーマンス上がった」という簡単なセリフでは済まされない努力と工夫が書かれていました。非常に面白いので、自分なりに噛み砕いた要約を書いてみます。コードはあまり出てきませんがテクニカルな内容になっています。 Picsartとは そもそもPicsartとは?ということなんですが、iOSとAndroidのモバイルデバイスとWebに対応した、世界的なオンラインの写真編集サービスです。 Wikipediaによると180カ国で10億ダウンロードを超えているとのことです。 問題 Picsartには固有の問題がありました。 各アプリの起動時にクライアントデバイスは1.5MBの設定ファイルをダウンロードする クライア

    Cloudflare WorkersとKVを使ってパフォーマンスを上げる話
  • HonoでAPI付き雑React SPA最小

    laisoさんが書いてたのほぼなんだけど Honoは文字列でもStreamでもなんでも返せるからサーバーサイドもReactで書けるし、tsconfig.jsonで適切に設定すればJSXなんでもいけるし、Viteのdev-serverがあるから、サーバーもクライントも同時に開発、ビルドできて、もちろんAPIを生やすのが得意で、雑React SPA環境(API付き!)作るのに向いてるよ。 作り方解説します。めんどい人はここにプロジェクト作ってるからclone、ダウンロードしてください。 まず、create-honoして、cloudflare-pagesのテンプレートを選ぶ。bunをパッケージマネージャーに使ってる。

    HonoでAPI付き雑React SPA最小
  • HonoXについて

    2月9日、予告していた通りHono v4をリリースしました。 そのHono v4のリリースと同時に、Honoを使ったメタフレームワーク「HonoX」を公開しました。 今回はHonoXのいくつかの特徴について書いてみたいと思います。これは使い方というより作者目線の思想みたいなものです。 メタフレームワーク HonoXとは一言で言うと「HonoとViteを組み合わせたメタフレームワーク」です。HonoX自体が機能を提供しないのが肝です。 もう少しだけ具体的に言います。HonoXで扱うのは「Honoのインスタンス」そのものです。つまりあなたがHonoXでアプリを作るということは「Honoのアプリを作る」ことになります。その証拠にエントリーポイントになるapp/server.ts内で出てくるappはHonoのインスタンスなので、hono/devにあるヘルパー関数showRoutes()がそのまま使

    HonoXについて
  • Honoのv4が2月9日にリリースされます

    X dayは2月9日です! ということで、Honoの現在のバージョンはv3系なのですが、v4を2月9日にリリースする予定です。偶然にもYAPC::Hiroshima 2024の前夜祭の日ですね。 当初はdeprecatedな機能を廃止したいという「ポジティブではない」理由でメジャーバージョンアップをしたかったのですが、大きな機能が入ることになりました。ずばりこの3つです。 Static Site Generation Client Components File-based Routing お分かりの通り、よりフルスタックなフレームワークに進化します。今回は2月9日に先駆けてこの3つの機能を軽くオーバービューしてみましょう。 RC版 v4のRC版が出てます。現在は4.0.0-rc.3が最新なので以下のコマンドでインストールできます。 npm create honoで作ったプロジェクト内で実

    Honoのv4が2月9日にリリースされます
    razokulover
    razokulover 2024/01/31
    個人的にめちゃくちゃ嬉しい機能増えてる!!
  • Hono + htmx + Cloudflareは新しいスタック

    この記事は以前7月に自分で書いた「Hono + htmx + Cloudflare is a new stack」という記事を一部修正し、訳したものです。 Hono + htmx + Cloudflareは新しいスタック 以前、バックエンドエンジニアだった身からすれば、Reactは複雑だと感じることがあります。さらに(私はフレームワーク開発者なのですが)フレームワーク開発者にとってはハイドレーションの仕組みを作ることは厄介です。しかし、しばしばReactを使うことになります。 Reactの優位な点の一つは「JSX」です。最初見た時、JSXは奇妙に思えました。「なんでJavaScriptの中にHTMLのタグが入っているんだ!」。しかし、一度慣れると、JSXは柔軟で、書きやすいことに気づきました。 今日はこれから、JSXをサーバーサイドのテンプレートとして使う技術スタックを紹介します。これはつ

    Hono + htmx + Cloudflareは新しいスタック
    razokulover
    razokulover 2023/10/09
    htmx、Hotwireじゃんと思ったらHotwireと似てると書かれてた。
  • My first Cloudflare Workers AI

    ワークショップ 来週というか今週の金曜日、名古屋でCloudflare Workers + Honoのワークショップをやるのですが、先日Birthday Weekで発表された「Workers AI (AIアプリがGPUで動く!)」が楽しいので、それを使ったアプリを作ろうということになりました。 先日もServerlessDays Tokyo 2023というイベントでCloudflare Workers + Honoのワークショップをやったのですが(4時間!)、その時にドタバタしちゃったんで、今回はもうやることを全部ここに書こうと思います。とはいえ「Cloudflare Workersとは」とか「Honoの特徴は?」とか書き出すとキリがないので、参考文献を参考にしてください。 準備してもらうこと まず、Cloudflareのアカウントを作って、Dashboardに入れることを確認してください

    My first Cloudflare Workers AI
  • Honoのv3.2が出ました

    Honoのv3.2が出ました。 今回のアップデートについて、リリースノートとほぼ同じ内容ですが、書きます。 Honoのステータス ちなみに現在のHonoのステータス。GitHubスターは4.4Kとなっています。 新しい機能 今回はマイナーアップデートとなります。破壊的変更は含まれないものの、大きな機能がいくつか追加されました。 2つの新しいルーター: LinearRouter and PatternRouter プリセットという概念と実装: hono/tiny, hono/quick app.mount() Node adapter serverの初のメジャーバージョン「v1.0.0」がリリース AWS Lambda function URLsのサポート Cookie Middlewareの追加 hono/nextjsからhono/vercelへのリネーム ではひとつずつ見ていきましょう。

    Honoのv3.2が出ました
    razokulover
    razokulover 2023/05/20
    色んなフレームワークのVMみたいになってる
  • Honoのv3が出ました

    僕がCreatorのHonoの新しいメジャーバージョンである「v3.0.0」が出ました。 このリリースノートに全て書いたのですが、補足を含めてこちらにも残しておきます。 Honoのステータス v3の説明の前に現在のHonoのステータスです。 GitHubスターは3.5Kです。 Cloudflare WorkersのSDK、DenoBun、それぞれのプロジェクトにHonoの文字が入ってます。 プロダクションやライブラリでも使われています。 cdnjsのAPIサーバー Polyfill.io repeat.dev Drivly substats Ultra(DenoReact SSRフレームワーク) Cloudflare 公式のブログ記事 などなど いい感じです。 v3のスローガン v3へのバージョンアップにあたってのスローガンはズバリこれでした。 Do Everything, Run A

    Honoのv3が出ました
    razokulover
    razokulover 2023/02/22
    RPCモード良さそう
  • 1