並び順

ブックマーク数

期間指定

  • から
  • まで

321 - 360 件 / 994件

新着順 人気順

nodeの検索結果321 - 360 件 / 994件

  • 大規模サービスのBFFサーバーをKubernetesに移行した記事で書いていないこと

    【追記情報】 2022/06/15 09:00 誤字修正 + cdkk8sについて言及 先日、ハンドブックを公開しました。 ここではKubernetes上で稼働させた実績値としての記録が紹介してあります。が、逆に紹介していないものもたくさんあります。検証が済んでいないもの、時間的制約から導入できなかったものなど、不完全な情報を紹介しようと思います。 したがって、何も保証するための裏付けはないので「そういうことも検討してたんだなぁ」ぐらいで読んでもらえると嬉しいです。元記事もぜひ読んでみてください。 nodejsのDocker Imageの軽量化 Docker Imageを作る際、多くの場合Image内にnode_modulesを含んだ状態でイメージを作成しています。Nodejsのベースイメージが60〜100MBくらいあるのに対して、ビルド後のイメージサイズは200MB〜1GBくらいまで膨れ

      大規模サービスのBFFサーバーをKubernetesに移行した記事で書いていないこと
    • @cybozu/eslint-configから学ぶ、全社共通ESLint configの運用

      The lightning talk for フロントエンドカンファレンス福岡スピンオフ テーマ: ESLint https://fec-fukuoka.connpass.com/event/201334/

        @cybozu/eslint-configから学ぶ、全社共通ESLint configの運用
      • ブラウザとNode.jsで動く1kBのキーバリューストレージライブラリを書いた

        azu/kvsというブラウザとNode.jsで動くファイルサイズが小さいキーバリューストレージを作りました。 モチベーション ファイルサイズが小さくIndexedDBを使っていて、Node.jsでも透過的に同じAPIで利用できるライブラリが必要となったため作りました。 textlint-editorというアプリを書いていて、キャッシュストレージとしてlocalstorage-ponyfillを使っていました。 しかし、localstorage-ponyfillはブラウザとNode.jsで透過的に動くストレージライブラリですが、LocalStorageベースとなっています。 textlint-editorでは、スクリプトをWeb Workerで動かすため同期的なAPIであるLocalStorageは利用できません。 そのため、IndexedDBベースでシンプルなキーバリューストレージを扱える

          ブラウザとNode.jsで動く1kBのキーバリューストレージライブラリを書いた
        • ブラウザとnode.jsに両対応したライブラリを作りたいときのWebpackレシピ集 - Qiita

          概要 Webpackを使ってNode.jsとブラウザに両対応したライブラリを作るときのレシピ集です いろいろなレシピを見てWebpackによるライブラリ生成の挙動を理解することを目的としています ブラウザにもNode.jsにも両対応したライブラリを作りたい ブラウザとNode.jsに両対応したいとおもったとき、 両方同時に対応した1つのバンドルjsを作る【統合型】と、 ブラウザ用、Node.js用と別々にライブラリを出し分ける【出し分け型】の2パターンある。 本稿では主に【統合型】について説明する ライブラリのビルドに関するWebpack設定項目 レシピ集に行く前に、 まず、ライブラリのビルドに関する設定項目をざっくりみていく。 webpack.config.js 以下のような典型的なwebpack.config.jsの中でoutput以下の項目でライブラリ生成のためのパラメータを決める。

            ブラウザとnode.jsに両対応したライブラリを作りたいときのWebpackレシピ集 - Qiita
          • Deta.shの無料枠が廃止になったらCyclic.shへ移行する - Qiita

            HerokuのFree Planが終了するらしい(泣)(泣) Starting November 28, 2022, we plan to stop offering free product plans and plan to start shutting down free dynos and data services. We will be sending out a series of email communications to affected users. 2022/11/28までに有料版にアップグレードしてねとのことらしい。 Cyclic.sh ⇒ Deta.sh ⇒ Cyclic.shへ移行した Cyclic.shは無料で使えるクラウドプラットフォーム。 クレジットカード・電話番号不要。 デプロイしたアプリはAWS上に展開されるようだ。 主に3つのサービスが無料で使え

              Deta.shの無料枠が廃止になったらCyclic.shへ移行する - Qiita
            • pnpm の特徴

              $ pnpm install express Packages: +57 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Packages are hard linked from the content-addressable store to the virtual store. Content-addressable store is at: ~/Library/pnpm/store/v3 Virtual store is at: node_modules/.pnpm Progress: resolved 61, reused 0, downloaded 57, added 57, done dependencies: + express 4.18.1 ディスク容量が節約された node_modules 「Packa

                pnpm の特徴
              • Node.jsをRustに書き換えるのはどのくらいかかる? 実験的導入でわかった、メリット・デメリット

                ウェブアプリケーションをRustで開発している、株式会社estie。今回開催された「Rust、何もわからない…」では、実サービスで活用されているRustについて、その活用方法の事例を紹介しました。ここで登壇したのは、ソフトウェアエンジニアの松本健太郎氏。アプリケーションのバックエンドをRustに書き換えた事例について発表しました。 バックエンドをRustに書き換えた実例報告 松本健太郎氏:私からは、まさにバックエンドをRustに書き換えるということで、実例報告的なことをやりたいと思っています。よろしくお願いします。 本日は、どういうことをしたかというところと、それをやるにあたっての意思決定。実際にやってみてどういうところが問題になったか。あとは、特にTypeScriptとの連携周り、どういう工夫をしたかをお話しできればと思います。 自己紹介です。松本健太郎と言います。 アプリケーションの概

                  Node.jsをRustに書き換えるのはどのくらいかかる? 実験的導入でわかった、メリット・デメリット
                • ブラウザ, Node, Cloudflareでも動くDenoモジュール開発

                  ブラウザだけでなく、非ブラウザなJavaScript(JS)処理系も増えてきたので、「主要ブラウザ、Node.js、Cloudflare Workersでも動くDenoファーストなTypeScript/JavaScriptモジュール開発&CI/CD」をやってみました。一事例として共有します。 はじめに 最近、TypeScriptで hpke-js というモジュールをつくりました。 HPKE (Hybrid Public Key Encryption) というのは、ざっくり言うと、公開鍵を交換しあって共有鍵をつくり、安全にEnd-to-End暗号化をおこなうための規格です。これを Web Cryptography API 上に実装し、このAPIをサポートする複数のJS処理系(主要なWebブラウザ、Node.js、Deno、Cloudflare Workers)で動作保証する(ちゃんと全環境で

                    ブラウザ, Node, Cloudflareでも動くDenoモジュール開発
                  • 小さなEventEmitterライブラリ - eventmitを書いた

                    EventEmitterのようにPub/Subを行うeventmitという小さなライブラリを書きました。 azu/eventmit: Simple EventEmitter. A single event object per an event. eventmitは、TypeScriptで書かれています。 また、Node.jsのEventEmitterなどとは違って、イベント一つに対してeventmitのオブジェクトを一つ作成して使います。 import { eventmit } from "eventmit"; const event = eventmit<{ key: string }>(); // Register handler event.on((value) => { console.log(1, value); }); event.on((value) => { consol

                      小さなEventEmitterライブラリ - eventmitを書いた
                    • Node/Deno でソースコードにテストを書く

                      tl;dr ファイルをそれ単独で単体テストとして実行するボイラープレートを編み出した そのヘルパとして mizchi/test という実装を作った なぜソースコードにテストを書きたいか Rust や Python の doctest ではソースコードにテストを書く方法があります。 ソースコードにテストを書けると、コードとテストの心理的な距離が近くなってテストが書きやすくなる、という肌感があります。(諸説あります) 実装とテストが混ざって汚れるのが嫌という意見も理解できますが、それはありつつ認めた上で、あとでリファクタする前提で最初の一歩をその実装に書けると嬉しい、という気持ちがあります。 現状の Node だととりあえず assert するだけという単純なテストを書くことは可能ですが、構造化する方法がないので、簡単なスクラッチの時ぐらいしか行われません。 // test.js import

                        Node/Deno でソースコードにテストを書く
                      • module bundlerの作り方(準備編) - hiroppy's site

                        今回は中身がどう動いているかを解説したいと思います。 最初のこの記事では、最低限の実装を説明していくことにします。 webpack のアルゴリズムの仕組みはこちらを読んでください。 必要なステップ 必要なステップは以下の 3 つです。 エントリーポイントからのすべてのモジュールを走査し、requireを解決後にユニーク id を付与していく コード内のモジュールパス(requireの引数(e.g. ./module.js))を id へ置換する runtime のコードテンプレートの作成 IIFE(即時関数)箇所とそれに付随する引数の module 群 この実装されあれば、動くコードはできます。(2 つめは optional でもいいけど後からつらくなる) モジュール解決 今回は説明しやすいように関数を 2 つに分けています。 すべてのモジュールの把握と ID 作成 コード内の requi

                          module bundlerの作り方(準備編) - hiroppy's site
                        • Node.js fetch の内部の話 - from scratch

                          前置き この記事は リクルートエンジニアアドベントカレンダーの3日目の記事です。 Recruit Engineers Advent Calendar 2022 - Adventar ちなみにココで書いたやつを一部抜粋させていただいております(ネタ切れにより過去投稿を利用してしまっております。。。すいません。。。) www.codegrid.net fetch が Node v18 から試験的にサポートされた ブラウザでは数年前から採用されていた HTTP リクエストを行う関数の fetch が global 空間に関数として作成されました。使うだけなら特に何のフラグもいりません、その代わり使うと Experimental であることを知らせる Warnings が出ます。 // fetch.mjs const response = await fetch('https://api.gith

                            Node.js fetch の内部の話 - from scratch
                          • Berry(yarn v2) + TypeScript + PnP + Workspace でプロジェクトを作ってみた感想 - Qiita

                            Berry(yarn v2) + TypeScript + PnP + Workspace でプロジェクトを作ってみた感想npmYARNyarnpkg berry(yarn v2) がそろそろリリースということで、使い込んでみた。その感想や yak-shaving などについて。 このリポジトリ https://github.com/mizchi/berry-typescript-project 日本語での網羅的な解説はこちらの記事がくわしい https://qiita.com/dojineko/items/6f65fde3c47aed8b6318 本記事は pnp の仕組みと webpack, jest, typescript を設定する泥臭い話がメイン。 使ってみた感想 npm とは完全に別系統に進化しつつある。互換があんまりない。 今対応するのは時期尚早でアーリーアダプターだけでよい

                              Berry(yarn v2) + TypeScript + PnP + Workspace でプロジェクトを作ってみた感想 - Qiita
                            • Node.js v19 の主な変更点 - 別にしんどくないブログ

                              Node.js v19がリリースされました 🎉 nodejs.org この記事では Node.js v19 の主な変更点を抜粋して紹介します! HTTP(S)/1.1 KeepAlive by default V8 10.7 ファイル変更時に自動的にプロセス再起動するwatchモード (experimental) --experimental-specifier-resolution フラグの削除 Web Crypto API が stable に昇格 ShadowRealm (experimental) Deprecations and Removals package.json の imports と exports に // を指定することを非推奨 process.exit() の引数に特定の型以外を渡すことを非推奨 まとめ HTTP(S)/1.1 KeepAlive by def

                                Node.js v19 の主な変更点 - 別にしんどくないブログ
                              • Deep Dive: Node.jsのESMデフォルト化への道

                                Node.js 21では --experimental-default-type=module フラグで、JavaScriptファイルのデフォルトの解釈をCJS(CommonJS)からESM(ECMAScript Modules)に変更できるようになっています。 Node.js 21 is now available! | Node.js これは、Node.jsにおいてJavaScriptファイル(.js)のデフォルトをESMに変更するための第一歩です。 今回のDeep Diveでは、Node.jsのESMデフォルト化に向けたIssueや実装について紹介します。 Node.jsのESMデフォルト化 Discussion: New “ESM by default” mode · Issue #49432 · nodejs/node このIssueは、Node.jsにおけるambiguous

                                  Deep Dive: Node.jsのESMデフォルト化への道
                                • Deno Node 両刀

                                  Node 学園 #38

                                    Deno Node 両刀
                                  • 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歳からのプログラミング
                                    • 動画で分かる!ブラウザと Node.js の Event Loop 解説

                                      Event Loopってみなさん聞いたことありますか? 「うん、なんか聞いたことありますが、よくわからないな・・・」や「分かりそうで、分からないな・・・」って思ってる方がいますかね? 長文ではありますが、Event Loop というものを改めて理解してみましましょう! まずこのコードの実行結果を考えてみましょう。 console.log('1') setTimeout(function callback(){ console.log('2') }, 1000) new Promise((resolve, reject) => { console.log('3') resolve() }) .then(res => { console.log('4'); }) console.log('5') 答えを分かりますでしょうか?正解はこの後記事内で公開します。 JavaScript 実行の仕組み

                                        動画で分かる!ブラウザと Node.js の Event Loop 解説
                                      • GitHub - otya128/web-bml: Data broadcasting browser for Japanese TV

                                        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. Dismiss alert

                                          GitHub - otya128/web-bml: Data broadcasting browser for Japanese TV
                                        • Node.js — Node.js 18 is now available!

                                          We’re excited to announce that Node.js 18 was released today! Highlights include the update of the V8 JavaScript engine to 10.1, global fetch enabled by default, and a core test runner module. Initially, Node.js 18 will replace Node.js 17 as our ‘Current’ release line. As per the release schedule, Node.js 18 will be the 'Current' release for the next 6 months and then promoted to Long-term Support

                                            Node.js — Node.js 18 is now available!
                                          • 気をつけたいKubernetesとの付き合い方 / Happy Kubernetes Life

                                            Admission Webhookで快適なSecret管理 / Berglas Secret Admission Webhook

                                              気をつけたいKubernetesとの付き合い方 / Happy Kubernetes Life
                                            • Sensu | How Kubernetes works

                                              August 8, 2019 // Jef Spaleta Sensu, Inc. This post walks you through how Kubernetes works, breaking down the individual components to illustrate how K8s helps you manage the lifecycle of containerized applications. DevOps It’s no secret that the popularity of running containerized applications has exploded over the past several years. Being able to iterate and release an application by provisioni

                                              • Node.jsの“ブラックホールに立ち向かえ! 膨れ上がる「node_modules」の容量を削減する4ステップ

                                                「東京Node学園」は、Node.js日本ユーザグループ主催のNode.js勉強会です。36時限目の今回は、オンラインで開催されました。Naturalclar氏は、node_modulesを意識的に削減することで得られるメリットとその方法を発表しました。 宇宙の中で一番重い「node_modules」 Naturalclar氏:よろしくお願いします。「node_modulesのブラックホールとの向き合い方」という資料で発表します。Naturalclarです。 はじめにちょっと自己紹介すると、本名はJesseと申します。現在、株式会社stand.fmというところで、音声配信アプリを作っています。React NativeでAndroid・iOS向けのアプリを作っています。また、OSS活動をいろいろとやっていて、「React Native Community」というGithub Organiza

                                                  Node.jsの“ブラックホールに立ち向かえ! 膨れ上がる「node_modules」の容量を削減する4ステップ
                                                • Node.jsに入る新しいCJSからESMへの読み込み方法の紹介 - hiroppy's site

                                                  新しくCJSとESMの間での解決方法が変わる提案が出てきました。 まだマージされてませんが、すでに複数の承認があり、この方針から変わることはないように見えるので紹介したいと思います。 module: support require()ing synchronous ESM graphs by joyeecheung · Pull Request #51977 · nodejs/node Summary This patch adds require() support for synchronous ESM graphs under the flag --experimental-r... 新しい提案 この仕組みを利用する場合、--experimental-require-moduleフラグが必要となります。 以下は、わかりやすいようにpackage typeを指定せずにデフォルトはCJS

                                                    Node.jsに入る新しいCJSからESMへの読み込み方法の紹介 - hiroppy's site
                                                  • オープンソースのnpmパッケージ「node-ipc」にロシア在住の開発者を標的にした悪意のあるコードがメンテナーによって追加される

                                                    オープンソースで開発される、ウェブアプリのUI構築用JavaScriptフレームワーク「Vue.js」のコードに、ロシアとベラルーシに在住する開発者を標的とした悪意のあるコードが追加されたと、開発者向けセキュリティプラットフォームのSnykが発表しました。メンテナーの1人がロシアのウクライナ侵攻に対する抗議行為として、問題のコードを追加したことがわかっています。 Alert: peacenotwar module sabotages npm developers in the node-ipc package to protest the invasion of Ukraine | Snyk https://snyk.io/blog/peacenotwar-malicious-npm-node-ipc-package-vulnerability/ Sabotage: Code added

                                                      オープンソースのnpmパッケージ「node-ipc」にロシア在住の開発者を標的にした悪意のあるコードがメンテナーによって追加される
                                                    • Node.jsでプロトタイプ汚染後に任意コード実行まで繋げた事例 - knqyf263's blog

                                                      概要 前回Node.jsのプロトタイプ汚染を起こすためのバイパス方法について記事にしました。 knqyf263.hatenablog.com プロトタイプ汚染後に何が出来るのか、ということについては基本的にアプリケーション依存なのであまり話題になることは少ないです。 自分の知る限り一番多いのは if(user.isAdmin) { // do something } といったような重要なプロパティを書き換えることで権限昇格する例です。ただし、自分の理解では isAdmin が初期化されていないことが前提条件として必要です。 const obj1 = {}; const obj2 = JSON.parse('{"__proto__":{"isAdmin":true}}'); merge(obj1, obj2) var a = {} a.isAdmin // true var b = {isA

                                                        Node.jsでプロトタイプ汚染後に任意コード実行まで繋げた事例 - knqyf263's blog
                                                      • TypeScript 製のフレームワーク FoalTS を使ってみる - Qiita

                                                        FoalTS とは TypeScript で作られている Express ベースのウェブアプリケーションフレームワークです。 多くの Node 向けフレームワークはマイクロフレームワークで、気軽に始めるのはいいのですが、ちょっと込み入ったアプリにしようと思った時にあまりに自由度が高いので意外と開発が難しくなる傾向がありますよね。 その点、FoalTS は軽量なスタートから、堅牢なアプリケーションを開発するために必要な基本的な機能を提供してくれるフルスタックフレームワークとしても使える (とドキュメントには書いてある) ということなので、サーバーサイドを Node で運用したいときに Express に代表されるようなマイクロフレームワーク以外の選択肢として結構良いかもしれないと思い、少し試してみることにしました。 プロジェクトを作る 多くのフレームワークと同じく、プロジェクトを作成したりで

                                                          TypeScript 製のフレームワーク FoalTS を使ってみる - Qiita
                                                        • Deno v1.15で導入されたNode.js互換モードについて

                                                          2021/10/12にDeno v1.15がリリースされました。 この記事では、Deno v1.15で新しく導入されたNode.jsの互換モードについて解説します。 Node.jsの互換モードとは? まず、以下のようなJavaScriptファイルがあったとします。 import { EventEmitter } from "events"; const emitter = new EventEmitter(); emitter.on("foo", () => console.log("foo")); emitter.emit("foo"); $ deno run main.mjs error: Relative import path "events" not prefixed with / or ./ or ../ from "file:///home/uki00a/ghq/github

                                                            Deno v1.15で導入されたNode.js互換モードについて
                                                          • structuredCloneはどんなものか

                                                            structuredCloneは、JavaScriptにおいてオブジェクトのディープコピーができる便利な関数です。 従来ディープコピーの標準化された方法が無かったため、structuredCloneの登場はJavaScriptのユーザーにとって画期的なものです。あまりに画期的であり、その便利さも分かりやすいため、出たばかりの時期はTwitterでのJavaScript豆知識ツイートの常連でした。 現在はstructuredCloneのもの珍しさは無くなり、単純に便利なAPIとして受け入れられていますが、そのせいかstructuredCloneに対する理解も単純な人が出てきているようです。 そこで、この記事ではstructuredCloneがどのようなものなのか、どうしてそのようになっているのかについて、じっくりと説明します。 structuredCloneの歴史 筆者は自称世界一技術の歴史

                                                              structuredCloneはどんなものか
                                                            • 技術的負債の返済の足がかりにテンプレートのParserを作った話 - LIFULL Creators Blog

                                                              プロダクトエンジニアリング部の中島です。 今回はフロントエンドのテンプレート部分についての負債やレガシーな機構に対する改善の取り組みについて紹介させていただきます。 背景 LIFULL社のメインサービスであるLIFULL HOME'SのメインリポジトリのサーバサイドはSymfony + Twig(※テンプレートエンジン)の構成を採用しています。 このリポジトリの歴史は古く、2011年頃から開発は行われており、今となってはレガシーな機構であったり、開発体験を損ねる負債的な記述も多くあります。 テンプレート部分で多くみられる問題のうちいくつかをピックアップすると弊社ではこのようなものが悩みのタネになっています 変数などを用いた動的な部分テンプレートの呼び出しによるgrepしやすさの低下 部分テンプレートをロードするときにスコープ制御(Twigだとonly属性)をつけ忘れてテンプレート間依存関係

                                                                技術的負債の返済の足がかりにテンプレートのParserを作った話 - LIFULL Creators Blog
                                                              • JavaScript、TypeScriptなどで使われるコードフォーマッター 「Prettierさまに従って生きていれば楽」ではない3つのケース

                                                                「東京Node学園」は、Node.js日本ユーザグループ主催のNode.js勉強会です。36時限目の今回は、オンラインで開催されました。suzuki氏は、Node.js上で動作するコードフォーマッターであるPrettierに従わなくてよいケースについて発表しました。 「従われている」傾向があるPrettier sosukesuzuki氏(以下、suzuki):「Prettierに従わなくてもいい場合」を話します。 suzukiといいます。筑波大学の情報科学類で学生をしていたり、サイボウズ株式会社というところで働いていたり、OSSだとPrettier Core Teamでメンテナンス全般をやっていたり、Babel TeamというところでBabelのパーサー周りを見ていたりします。 Prettier、Node.jsをよく使う人ならたぶん使ったことがあると思うのですが、Prettierは、Opi

                                                                  JavaScript、TypeScriptなどで使われるコードフォーマッター 「Prettierさまに従って生きていれば楽」ではない3つのケース
                                                                • Node.js v18 の主な変更点 - 別にしんどくないブログ

                                                                  Node.js v18がリリースされました 🎉 nodejs.org この記事では Node.js v18 の主な変更点を抜粋して紹介します! fetch() がフラグ無しで実行可能に (experimental) HTTP requestTiemout()のデフォルト値の変更 node:test モジュール(テストランナー)の追加 (experimental) V8 アップデートによる新しい JavaScript の API の追加 Array#findLast(), Array#findLastIndex() Intl.supportedValuesOf() その他の改善 Web Streams API のグローバルへの追加、実行時の警告の削除 (experimental) まとめ fetch() がフラグ無しで実行可能に (experimental) github.com Node

                                                                    Node.js v18 の主な変更点 - 別にしんどくないブログ
                                                                  • アプリケーションコードに変更を加えないNode.js Native ESMへの移行

                                                                    LINE株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。 LINEヤフー Tech Blog はじめに こんにちは。フロントエンド開発センター(UIT) Front-end Dev.9チームの鴻巣(@kazushikonosu)です。LINEスキマニおよびLINE Creators Marketのフロントエンド開発を担当しています。 LINEスキマニのフロントエンドチームでは、React/TypeScript製のWebアプリを開発しています。主にクライアントサイド向けのコードを扱っていますが、SSRのため同じリポジトリ内でNode.jsを使って実行されるTypeScriptコードも扱っています。クライアントサイドのモジュールバンドラとして長らくwebpackが使われていましたが、webpackを使い続けることでチームの

                                                                      アプリケーションコードに変更を加えないNode.js Native ESMへの移行
                                                                    • 【超簡単手順】低スペックローカルPCで大規模言語モデル「LLaMA」を動かす!

                                                                      ある日、Twitterを巡回していると え...マジで?となりました。自分の専属AIを作りたい!と思い立ち、実際に動かしてみました。 目標 このようにローカルPC上でLLaMAとチャットできるようになります。 ただ、自分が使ったモデルは7Bモデルと言って、パラメータがあまり大きくない=あまり賢くないモデルだったので出力は変な感じになっています笑 (明らかにネットの会話を推論に引っ張ってきてますね...) なので、今回はとりあえず動かしてみたい人向けです!精度などは気にせずお試しください。 ちなみに、自分はM1 MacBookAir(8Gメモリ)で動きました!信じられないぐらい遅いですが笑 Macユーザー向けに解説しますが、windows、linuxユーザーでもほとんど変わらないと思います。 手順 基本的にはこのgithubでの手順を踏んでいきます。 Node.js (npm) をインストー

                                                                        【超簡単手順】低スペックローカルPCで大規模言語モデル「LLaMA」を動かす!
                                                                      • webpack4系から5系にアップデートした際の対応事項とかメモ - Madogiwa Blog

                                                                        個人で開発しているサービスでフロントエンドのbuildにwebpackを利用しているのですが、4系から5系にアップデートしたので、そのあたりで対応したことをメモしておきます📝 利用していたwebpackのビルド構成 webpackアップデート時の対応事項メモ modeを明示的に指定するようにした デフォルトでinstallされなくなったNode.js系のpolyfilをinstallした [hash]ではなく[contenthash]を利用するようにした その他の対応事項 webpack-assets-manifestのデフォルトのファイルパスが変わる おわりに 利用していたwebpackのビルド構成 基本的には以下のようなライブラリを利用したBabel + TypeScript + Vueで、 mini-css-extract-pluginでcssを別ファイルで生成するようにして、we

                                                                          webpack4系から5系にアップデートした際の対応事項とかメモ - Madogiwa Blog
                                                                        • Web相互運用性JavaScriptランタイムコミュニティグループ

                                                                          本日、CloudflareはVercel、Shopify、およびNode.jsとDenoの両方の中心的な個々のコントリビューターと協力して、Webブラウザではない、JavaScriptベース開発環境で標準化Web APIを相互運用できる実装に焦点を当てた、新しいコミュニティグループの設立を発表いたします。 W3CおよびWeb Hypertext Application Technology Working Group(WHATWG)は、開発環境としての標準化APIとWebの機能を、長い間先頭に立って開発してきました。fetch()、ReadableStreamおよび WritableStream、URL、URLPattern、TextEncoder などのAPIは、現代のWeb開発における馴染みの、そして貴重なコンポーネントになりました。ただし、これら既存グループは常にWebブラウザの特定

                                                                          • Apple Silicon 動作確認記 (随時更新) - Qiita

                                                                            Apple M1チップ搭載13インチMacBook Proを購入したので、各アプリケーションの対応状況を確認していきますー。 ソフトウェアエンジニアなので、その周りのアプリケーションを中心に。 対応状況は、あくまでその時点までの確認です。 使っていたら、別の状況が見えてくるかもしれませんね! では、書いていきます。 Chrome 動く。 今この記事を書いているのも、M1 + Chrome。問題なく動作しています。 最初にRosettaをインストールしますか?って聞かれますが、すぐにインストールされました。 Google日本語入力 個人的に大好きなのでインストール。問題なく動作しています。 iTerm2 動く 問題なし。 Node.js (v14.15.1) Hello Worldは問題ない。 ito@itoutakeshinoMacBook-Pro ddd % cat index.js c

                                                                              Apple Silicon 動作確認記 (随時更新) - Qiita
                                                                            • Nullstack - Feature-Driven Full Stack JavaScript Components

                                                                              Feature-DrivenFull Stack JavaScript ComponentsNullstack is a web framework that makes coding fun again. Write the backend and frontend of a feature in a single isomorphic component with zero boilerplate or glue code. class WaifuCounter extends Nullstack { // runs in the server static async getWaifus({ database }) { const sql = "SELECT COUNT(*) FROM WAIFUS"; return database.query(sql); } // runs in

                                                                                Nullstack - Feature-Driven Full Stack JavaScript Components
                                                                              • Deno でコマンドラインツールを雑に作ったので感想

                                                                                趣味で TC39 のアクティビティを追ったり https://cybozu.github.io/frontend-expert/ にそういう記事を書いたりすることがあるのですが、その作業をする中でややめんどい手作業みたいなのがあったりします。 そういうのを自動化するコマンドラインツールを作ろうと思って、最初いつもどおり Node.js で作り始めました。30分くらいしていつもどおり Node.js じゃつまらないなと思ったので Deno で作ってみました。 実は Deno を使ったのは初めてだったので感想を書いてみます。哲学とかは置いといて単純にユーザーとしての利便性について。 deno lint と deno fmt が便利 自分は ESLint と Prettier に精通している方だけどとは言えそういう設定なしにシュッと動くのはかなり楽。速いし。 標準ライブラリが便利 Node.js

                                                                                  Deno でコマンドラインツールを雑に作ったので感想
                                                                                • Webサービス開発でのmonorepo環境(Turborepo, nx)

                                                                                  Webサービス開発の文脈で、モノレポ環境を作る方法について整理しました。 ※バックエンドもフロントエンドも全てTypeScriptで開発している前提 この記事を書いた背景 世間で言われる「モノレポ」がどのように達成されているのか知らなかった 参考記事を読んでると実現方法が異なっていたり、運用のイメージが見えなかったり、ベストプラクティスが分かりづらかった Turborepoのようなモノレポツールを導入すれば解決しそうだが、このツールが何をしてくれるのか理解できなかった モノレポ何も分からない………になった この記事ではモノレポに関連する仕組みを1つ1つ丁寧に把握し、最終的に理想的なモノレポ環境を実現することを目指します。 モノレポとは? まずは用語の整理から。 モノレポを素直に訳せば「1つのリポジトリ」という意味でしかなく、1つのリポジトリで開発していればそれは「モノレポ」と呼べそうです。

                                                                                    Webサービス開発でのmonorepo環境(Turborepo, nx)