並び順

ブックマーク数

期間指定

  • から
  • まで

81 - 120 件 / 2541件

新着順 人気順

node.jsの検索結果81 - 120 件 / 2541件

  • n8n.io 入門 : IFTTT のようなワークフローを構築しよう - kakakakakku blog

    「n8n.io」を使うと GitHub / Slack / Google Sheets など多くのサービス(ドキュメントを見ると 240 以上もインテグレーションできる!)を組み合わせて自由に「ワークフロー」を構築できる.関連サービスで言えば IFTTT のような感じ!例えば IFTTT Pro に課金せずにセルフホスティングできたりする.今回は「n8n.io 入門」を目的として Mac で Docker を使って「n8n.io」を試す.現状だと Docker と npm (npx) で試せる.なお,SaaS として使える「n8n.cloud」もある(最近まで coming soon になっていた). n8n.io n8n.io 入門 : 完成形 今回は「GitHub リポジトリに対する Star⭐/ Unstar⭐をトリガーに Slack 通知とコマンド実行に条件分岐をするワークフロー」

      n8n.io 入門 : IFTTT のようなワークフローを構築しよう - kakakakakku blog
    • Rustの活用でElectronよりも軽くて速いアプリフレームワーク「Tauri」が安定版に/まずはデスクトップから。モバイル・Webへの対応も進行中

        Rustの活用でElectronよりも軽くて速いアプリフレームワーク「Tauri」が安定版に/まずはデスクトップから。モバイル・Webへの対応も進行中
      • 10分でわかる「今更だけどTypeScriptってなに?」 - Qiita

        2年ぶりくらいに業務で TypeScript をやることになったので、個人的なおさらい用です。 TypeScript とは JavaScript は現在 Web アプリケーションの開発で最も使われているものの、JavaScript 独特の癖や、型の認識が緩いこと、ブラウザによって挙動に違いがあります。 それらを補うために altJS というアプローチがあります。JavaScript の機能を拡張し、よりメンテナンスしやすく、高機能にするものです。 それをトランスパイル(変換)することでブラウザによる挙動の違いを吸収したピュアな JavaScript が吐き出され、安全に JavaScript にはまだ無い機能を擬似的に使えるようにすることができます。 その中で現在デファクトスタンダードとなっているのが、TypeScriptです。 なぜ TypeScript が人気なのか 近年の Web 開

          10分でわかる「今更だけどTypeScriptってなに?」 - Qiita
        • Prettier と ESLint の組み合わせの公式推奨が変わり plugin が不要になった

          前に書いた ESLint と Prettier の共存設定とその根拠について が公式推奨が変わったことにより一部間違った情報になっているのでその訂正記事です。 該当記事に書いた内容は Prettier と ESLint の関係を読み解く上で役立つ情報だと思うので、警告とこのページへのリンクを書いた上でそのまま残しておきます。 (追記) この記事の内容も間違った内容を書いていました。なので一度大幅な訂正をしています。prettier-eslint も推奨ではありません。 変更点の要約 Prettier と ESLint の組み合わせについて公式 の推奨方法が変わりました。 きっといつかこの情報も古くなるので直リンクではなく、ドキュメントの GitHub のリンクを貼っておきます。 ドキュメント自体のリンクはこちらです。 新しいドキュメントを要約すると、 Linter と Formatter

            Prettier と ESLint の組み合わせの公式推奨が変わり plugin が不要になった
          • Google、最適化されたコンテナイメージを生成する「buildpacks」をオープンソースで公開。Dockerfile不要でJavaやGo、Node.jsをコンテナへビルド

            Google、最適化されたコンテナイメージを生成する「buildpacks」をオープンソースで公開。Dockerfile不要でJavaやGo、Node.jsをコンテナへビルド Googleは、アプリケーションのコードから最適なコンテナイメージを生成するツール群「buildpacks」(ビルドパック)をオープンソースで公開すると同時に、Google CloudのCloud Run、Anthos、Google Kubernetes Engine (GKE)がこのbuildpakcsに対応したことを発表しました。 We’re launching broad support across @googlecloud for buildpacks, an open-source technology that makes it fast & easy to create secure, product

              Google、最適化されたコンテナイメージを生成する「buildpacks」をオープンソースで公開。Dockerfile不要でJavaやGo、Node.jsをコンテナへビルド
            • React ユーザー向けの Next.js ガイド

              最近会社で Next.js のチュートリアルを担当することがあったり、これからもあるので資料として記事をしたためておこうと思う。 対象は、React は知っているけどこれから Next を学ぼうとする人が想定。 つまり React 単体と Next の差分をまとめる。 React そのものから学びたい人は別の資料にアクセスした方が良いだろう。 Next の学習教材 とりあえず公式だけ読めば良い。(これでいまブラウザバックされたら面白いな・・・) 主に二つあり、 ドキュメントや API: https://nextjs.org/docs/getting-started チュートリアル: https://nextjs.org/learn/foundations/about-nextjs を読むと良い。 Next は何を解決しているか、何が嬉しいか 元々は SSR のための煩雑な手続きをしなくてい

                React ユーザー向けの Next.js ガイド
              • Auth.js | Authentication for the Web

                // auth.ts import NextAuth from "next-auth" import GitHub from "next-auth/providers/github" export const { auth, handlers } = NextAuth({ providers: [GitHub] }) // middleware.ts export { auth as middleware } from "@/auth" // app/api/auth/[...nextauth]/route.ts import { handlers } from "@/auth" export const { GET, POST } = handlers // src/auth.ts import { SvelteKitAuth } from "@auth/sveltekit" impor

                  Auth.js | Authentication for the Web
                • Chrome の console.log でハマらないために

                  JavaScript を書いたことがある人ならば一度は使うであろう console.log ですが、この関数は思ったよりも厄介な性質を持っています。その性質を知らずに console.log を使うと、デバッグ時に大ハマリしてしまうことがあります。この記事では console.log の落とし穴についてお話します。 今回は Chrome に特化して解説しますが、Firefox や Safari でも同じ落とし穴があります。 console.log とは まずはさらっと基本をおさらいしましょう。 大前提なのですが、console.log は JavaScript の言語仕様(ECMAScript)で定義されていません。ブラウザ向けには whatwg の仕様がありますが、あくまでもそれはブラウザ向けの仕様であり、Node.js を含むほぼ全ての JavaScript 環境で使えるのは cons

                  • 2020年でJavaScript学ぶならきっとブラウザ向けJSガン無視していきなり初手node.js(ただし暫く何も足さない)がいいんじゃないかというメモ

                    ※ @mizchi さんのアンサー記事「プログラミング初心者のための JavaScript と Node.js の歴史、それを踏まえた勉強方法」 もこの後にあわせてどうぞ。 https://zenn.dev/mizchi/articles/3789a101dae388d98159 Python3とPHP7をちょぼちょぼとやっている個人がJavaScript(2016年以降)/node.js/JS系ライブラリ/JS系Webフレームワーク/TypeScript等を攫っている中で一つ思ったことをメモった。JavaScriptやるなら絶対node.jsの実行環境揃えてからがいい、そうしないでJSやるくらいなら汎用性信じてPython3一択に絞った方がいい、と思ったという件です。 具体的には、以下の構成のみでJavaScriptの開発演習をすればいいんじゃないか、という話です。 続きを読む

                      2020年でJavaScript学ぶならきっとブラウザ向けJSガン無視していきなり初手node.js(ただし暫く何も足さない)がいいんじゃないかというメモ
                    • n8n(IFTTT,Zappierの代替)をセルフホストして自動化を快適にする - Qiita

                      はじめに こんにちは。 みなさんZappierやIFTTTを使ったノーコード自動化は好きですか? 僕は業務の効率化や自動化が好きなので、こういったツールは今まで興味を持っていましたが、料金的なところで二の足を踏んでいました。。。 最近のSaasサービスの値上げラッシュ。特に海外のツールはどんどん月額設定が高くなりますし、為替の影響で高くなります。 ですので、結局、自動化したいことはコードを書いたりエンジニアの知識をフル活用して自動化しちゃいます。笑 今回は、そんなエンジニアのみなさんに向けて、n8nというローコード自動化ツールをご紹介しようと思います。 n8nとは 技術者向けのワークフローの自動化 API と戦うことなく、複雑な自動化を 10 倍速く構築 スクリプトのスパゲッティを苦労して過ごした日々は終わりました。その他すべてに柔軟性と UI が必要な場合は、JavaScript を使用

                        n8n(IFTTT,Zappierの代替)をセルフホストして自動化を快適にする - Qiita
                      • TypeScriptでWebサービス開発(Apollo Server/Prisma/Next.js etc...)

                        最近開発しているBtoB SaaSサービスの技術スタックを、RailsからNode.jsに移行した。 これにより、フロントエンドもバックエンドも全てをTypeScriptで統一することができた。 特にNode.jsのWebバックエンドの構成について、まだまだ世の中に知見が少ない気がしているので記事にしておく。 Webバックエンド - Node.js(TypeScript) Nexus/Apollo Server (Webサーバー) GraphQLサーバーとして、Apollo ServerのコードファーストなアプローチでのラッパーであるNexusを使っている。 Railsからの移行を決断できたのも、Apollo ServerとPrismaにより、外部との通信が型付きで、かつ開発体験よく書けるようになたから、というのが大きくある。 数年前の段階だと、素のexpressを使ってWebサーバーを立

                          TypeScriptでWebサービス開発(Apollo Server/Prisma/Next.js etc...)
                        • GitHub - banga/git-split-diffs: Syntax highlighted side-by-side diffs in your terminal

                          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 - banga/git-split-diffs: Syntax highlighted side-by-side diffs in your terminal
                          • lodash やめ方 - Qiita

                            みなさん、 lodash で消耗してますか? 私は消耗しています。 なぜ lodash で消耗するかというと、とにかく思考停止でインストールされ、 node_modules 下で大量に重複します。サイズが大きいlodashが複数バンドルされてビルドされると、重篤なパフォーマンス上の問題を引き起こします。 lodash には実装上の問題もあり、異様に丁寧に、そして富豪的に作られており、その結果ビルドサイズが無駄に大きいです。丁寧に作られて入るのですが、現代のフロントエンド水準や一般的なポリフィルと噛み合っていません。というわけで、常々やめたいと思っています。 ちゃんとES201xを追ってる人からすると、ほとんどの lodash のメソッドは不要に見えるはずです。本エントリは、思考停止で lodash で実装しようとする人に、ちょっと考え直しては? と投げつける用の記事になります。 現代におい

                              lodash やめ方 - Qiita
                            • どうして Fastify は生の Node.js より速いの? : (*x).b=z->a+y/c

                              Fastify 速いですね Express が hapi より遅いのは意外でした Koa は本体だけだと Express 以上に何もしないので その分速めです よくみると驚きなのが http.Server より Fastify が速いというところ http.Server はフレームワークを使わない Node.js 自体の API です Koa や hapi はこれを中で使っています これより速いということは Fastify は http.Server は使わずに net などを使って ソケット通信部分を直接操作しているのでしょうか? http.Server を使ってない?Fastify のソースコードを見た限りでは 特に設定をしなければ http.createServer でサーバを作成しています つまり http.Server を使っています https://github.com/fas

                                どうして Fastify は生の Node.js より速いの? : (*x).b=z->a+y/c
                              • TypeScript Tutorial For Beginners: Your Friendly Guide

                                What is TypeScript and why you may want to use it? Learn more with this TypeScript tutorial for beginners and start adding types to your JavaScript code! TypeScript tutorial for beginners: who this guide is for The following guide is a TypeScript tutorial for JavaScript developers interested in learning more about TypeScript. That means a decent knowledge of "vanilla" JavaScript is appreciated, ev

                                  TypeScript Tutorial For Beginners: Your Friendly Guide
                                • コストをかけずにWebサービスを公開するための構成例 - Qiita

                                  はじめに 個人でフロントエンド(react)、バックエンド(node.js)、データベース(postgreSQL)を利用したWebサービスを公開したいと考えていました。 まずはテスト的に無料で外部公開できるサービスがないか調査しましたが、2022年8月に有料化されたHerokuの記事ばかりヒットしてしました。 結果的には無料で使用できる構成があり、実際にテストプログラムを動作させることができましたので構成例として記載しておきます。 ※無料なので比較的厳しい条件も含まれていたりするのでそれぞれのサービスを確認お願いします。 例えばsupabaseは数日間利用がないとインスタンスが一時停止して手動で起動させないといけないなどがあります。 今回試したサービス できるだけ同じサービスに集約したいと考えていましたが、実際にはフロントエンド、バックエンド、データベースはそれぞれ異なるサービスになってし

                                    コストをかけずにWebサービスを公開するための構成例 - Qiita
                                  • Next.js の状態管理 2020

                                    Next.js といえば、SSG(JAMstack)が最近は特に話題ですね。1年前まではgetInitialPropsを用いて、どう SSR するのかという事が話題の中心でした。Next.js 9.3 以降、SSR をする際にはgetInitialPropsではなくgetServerSidePropsを使用することを推奨すると記載されています。(そして、getInitialPropsを使用することで自動最適化が無効となってしまう旨も)getStaticPropsやgetServerSidePropsを利用することで、私たちは SSG・SSR をページ単位で切り替えることができます。 「SSG・SSR」が共存する可能性がある場合、SSR にはgetServerSidePropsを利用することになります。この変化による影響範囲は多大で、状態管理とデータフェッチについて、再考する必要がでてきまし

                                      Next.js の状態管理 2020
                                    • Prisma: Node.js & TypeScript向けの完璧なORM

                                      本記事は、@nikolasburk氏による「The Complete ORM for Node.js & TypeScript」(2021年4月21日公開)の日本語翻訳を、著者の許可を得て掲載しているものです。今後Prismaの公式ブログの日本語翻訳の許可をいただいたので、このアカウントで継続して翻訳していきます。※画像やリンクは公式のBlogからお借りしています。 Prismaは、Node.jsとTypeScriptのための次世代ORMです。2年以上の開発期間を経て、すべてのPrismaツールが製品化の準備が整ったことをお伝えできることに興奮しています! コンテンツ オブジェクト-リレーショナルマッピングの新しいパラダイム あらゆるスタックに対応するPrisma ミッションクリティカルなアプリケーションでの運用に対応 オープンソースを超えて お手伝いできることは? Prismaを始めよう

                                        Prisma: Node.js & TypeScript向けの完璧なORM
                                      • Deno入門 ─ 新しいTypeScript/JavaScript実行環境でWebアプリ開発とデータベース接続の基本を体験しよう|ハイクラス転職・求人情報サイト AMBI(アンビ)

                                        例えばmain.tsというスクリプトに対して、ファイルの読み取りだけを許可したい場合は、以下のようにコマンドを実行します。 $ deno run --allow-read main.ts このときmain.tsプログラムはファイルの読み取りだけが可能になるため、ファイルの書き込みやネットワークアクセスをするとPermissionErrorによる実行時エラーになります。 なお、実行時にフラグを何も与えなければ、どの権限も持っていない状態になります。 各フラグにはパラメータを指定でき、例えば次のように実行すると/home/userディレクトリの読み込みだけが許可されます(--allow-writeフラグも同様)。 $ deno run --allow-read=/home/user main.ts また、--allow-netを次のように指定すると、特定のドメインとポートだけのアクセスを許可で

                                          Deno入門 ─ 新しいTypeScript/JavaScript実行環境でWebアプリ開発とデータベース接続の基本を体験しよう|ハイクラス転職・求人情報サイト AMBI(アンビ)
                                        • SPA+SSR+APIで構成したWebアプリケーションのセッション管理 - Pepabo Tech Portal

                                          カラーミーショップ サービス基盤チームのkymmtです。この記事では、サーバサイドレンダリングするシングルページアプリケーションとAPIサーバからなるWebアプリケーションのセッション管理方法について紹介します。 アプリケーションの構成 構成の概要 今回は例としてEC事業部で提供するカラーミーリピートをとりあげます。構成としては、Railsで作られたAPIサーバ1と、Vue.jsで作られたシングルページアプリケーション(SPA)からなります。また、SPAはExpressが動くフロントエンドサーバでサーバサイドレンダリング(SSR)します。APIサーバはSPAかフロントエンドサーバだけが呼び出します。各ロールはサブドメインが異なります。 APIサーバでセッションIDを持つCookieを発行し、Redisを用いてセッション管理します。また、APIサーバへのセッションが有効なリクエストはフロント

                                            SPA+SSR+APIで構成したWebアプリケーションのセッション管理 - Pepabo Tech Portal
                                          • JavaScriptのエキサイティングな新機能7選 - Qiita

                                            以下はMostafa Gaafarによる記事、7 New Exciting JavaScript Features You Need to Knowの日本語訳です。 7 New Exciting JavaScript Features You Need to Know JavaScript ( ECMA Script ) は進化する言語であり、たくさんのproposalやアイデアが出番を待ち受けています。 TC39 (Technical Committee 39) という委員会がJavaScript標準と新機能の定義を担当しています。 そして今年は彼らの活動が活発になっています。 以下は、現在ステージ3にある提案の一部の紹介です。 ステージ3は完成する直前の段階です。 これはつまり、この機能がブラウザやその他のJavaScriptエンジンにすぐに実装されることを表しています。 実際、以下の

                                              JavaScriptのエキサイティングな新機能7選 - Qiita
                                            • npm-scripts を書く時の手癖 - mizdra's blog

                                              かれこれ 5 年くらい趣味開発で npm-scripts を書き続けている。長年書き続けているとノウハウが蓄積されてきて、「こう書くとスッキリする」「迷いがなくなる」「後から拡張したくなった時に、簡単に拡張できる」みたいな書き方が身についてきた。自分の型、あるいは手癖のようなものだと思う。 せっかくなので、id:mizdra の今の npm-scripts を書く時の手癖を書き連ねてみる。 基本形 { "scripts": { "build": "webpack --mode production", "dev": "webpack-dev-server --mode development", "lint": "eslint .", "test": "jest" } } 一番シンプルな npm-scripts を書く時のパターン。以下の 4 つの script を登録している。 buil

                                                npm-scripts を書く時の手癖 - mizdra's blog
                                              • Geolonia 住所データ

                                                Skip to the content. Geolonia 住所データ 全国の町丁目、大字、小字レベルの住所データ(277,543件)をオープンデータとして公開いたします。 本データは、国土交通省位置参照情報ダウンロードサービスで配布されている「大字・町丁目レベル位置参照情報」をベースとしていますが、「大字・町丁目レベル位置参照情報」データは年に一回更新であるのに対して、本リポジトリで配布するデータは毎月更新しています。 latest.csvをダウンロード latest.dbをダウンロード リリースノート 住所データ仕様 ファイルフォーマット latest.csv: CSV latest.db: SQLite3で読み込めるバイナリ形式 列 都道府県コード 都道府県名 都道府県名カナ 都道府県名ローマ字 市区町村コード 市区町村名 市区町村名カナ 市区町村名ローマ字 大字町丁目名 大字町丁目

                                                • モダンで早い静的サイトジェネレータ Astro の始め方 - A Memorandum

                                                  はじめに プロジェクト作成 プロジェクト構成 コンポーネント レイアウト ページ ビルド Blog テンプレート Portfolio テンプレート Documentation テンプレート まとめ はじめに 先日1.0リリースとなった、静的サイトジェネレータのAstroの紹介です。 JSで作成したページをビルドして、JSを含まない早いサイトを生成し、必要な場合には React や Vue といった好きなフレームワークを簡単に組み込むことができるのが特徴になります。 プロジェクト作成 Node は、v14.18.0 以上、または v16.12.0 以上が必要です。 npm や yarn、pnpm で create astro でプロジェクトを作成します。 # npm $ npm create astro@latest # yarn $ yarn create astro # pnpm $ p

                                                    モダンで早い静的サイトジェネレータ Astro の始め方 - A Memorandum
                                                  • Node.jsを過去の物にする最速の肉まん - Qiita

                                                    その名はBun デデン BunはNode.jsやDenoのようなJavascriptランタイムです。(2022/7/8現在ベータ版) ちなみにロゴが本当に肉まんなのかはわかりません。(赤ちゃんの頭にも見えるけど名前がBun/パンだしなぁ...) この記事ではNode.jsやDenoと比較をしつつ、bunの解説させていただきます。 割となんでもできる Bunはただのランタイムではありません。下のように、開発に必須の多くな機能を最初から有しています。 TypescriptからJavascriptへのトランスパイル jsxからJavascriptへのトランスパイル npmのようなパッケージのインストール&管理 webpackのようなプロジェクトのバンドル化 もちろんランタイムなのでNode.jsのようにサーバーでJavascriptを実行することも可能です。 これらに加えてBunには様々な機

                                                      Node.jsを過去の物にする最速の肉まん - Qiita
                                                    • 未知の道に突入せず、まずは半分知ってるくらいの状態になる - hitode909の日記

                                                      Perl製アプリケーションからGraphQLを喋ってみたい、ということがあって昨年末に2週間くらいでプロトタイピングしていた。 CPANにGraphQLというライブラリが公開されていて、社内の利用実績もあるので、これをいきなり使ってみても良かったのだけど、自分はGraphQLについては、耳では知っていて、GitHubのAPIを呼び出したことがある、くらいで、実際に実装したことはなかった。 このような状態で突き進むと、問題に遭遇したときに2パターンの怪しさが出てきて、切り分けていくことになる。未知のものが多すぎて、プロジェクトXの、トンネルを掘るだけで難しいのに現地の言葉はわからない、みたいな回をイメージしてください。 GraphQL自体への理解が間違っているパターン スキーマ、クエリの書き方が悪い、概念を勘違いしている、など PerlでのGraphQLライブラリの使い方が間違っているパター

                                                        未知の道に突入せず、まずは半分知ってるくらいの状態になる - hitode909の日記
                                                      • yarn と npm の栄枯盛衰

                                                        yarn と npm の栄枯盛衰2021 年 8 月に yarn の v3 がリリースされました。2020 年の同月あたりに yarn v2 がリリースされたので、約 1 年ぶりのメジャーバージョンアップになります。 v1 → v2 のパラダイムシフトは強烈でしたが、 v2 → v3 は berry というパッケージ名は相変わらずで、 v2 の正統なバージョンアップでありちょっとだけ物足りなさを感じてます。 Get Started なにはともあれ、とりあえずは触ってみましょうか。 Node.js ≥ 16.10 であれば、 Corepack を使って以下のコマンドで yarn v3 をインストールできます。 $ corepack enable $ corepack prepare yarn@3.0.0 --activate # yarn.lock や README.md が生成される $

                                                          yarn と npm の栄枯盛衰
                                                        • AWS Lambda Node.js runtime の EoL に疲れたので Go にしていっている話 - KAYAC engineers' blog

                                                          SREチームの藤原です。Tech Kayac Advent Calendar Migration Track 19日目の記事です。いよいよ年も押し詰まってきましたね…! AWS Lambda、使ってますか?最近はサーバーレスという文脈で取り上げられることも多い Lambda ですが、カヤックではそこまでサーバーレスにこだわることはせず、主にイベントドリブンな処理に適切なユースケースに使用しています。 Lambda のリリース当初に用意されていたランタイムは Node.js のみでした。カヤックで最近使うことが多い言語である Go, Ruby のランタイムがサポートされたのが比較的最近だったということもあり、Node.js の Lambda function が比較的多く存在している状況でした。 Node.js EoL (End of Life) ところで、技術基盤チームのリポジトリで「La

                                                            AWS Lambda Node.js runtime の EoL に疲れたので Go にしていっている話 - KAYAC engineers' blog
                                                          • GitHub - microsoft/beginners-intro-javascript-node: Beginner's Series: Introduction to JavaScript (Node.js)

                                                            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 - microsoft/beginners-intro-javascript-node: Beginner's Series: Introduction to JavaScript (Node.js)
                                                            • イベントループと TypeScript の型から理解する非同期処理

                                                              この本は、ブルーベリー本の 8 章からインスパイアされて、 TS の型が示す情報から Promise というものを理解してみる、というアプローチで書いたJSの非同期処理の解説です。 これらの資料と合わせて読むことを推奨します。 JSのイベントループのイメージを掴む JSでは中々意識することが少ないですが、正しく理解するには OS レベルのスレッドの視点で考え始める必要があります。 ブラウザや Node.js では一つのスクリプト実行単位を1つのスレッドに割り当てます。それをメインスレッドと呼んだり、ブラウザだったら UI スレッドと呼んだりします。 例えばブラウザでは、これは秒間60回、つまり 16.6ms ごとにループを呼び出します。(node だったらこれがもっと短いです) 仮に setTimeout の実装がなかったとして、それ相当の擬似コードを書くのを試みます。 let handl

                                                                イベントループと TypeScript の型から理解する非同期処理
                                                              • 大統一 Node ツールチェイン Rome の野望 現状の実装

                                                                つい先日 beta リリースされたフロントエンドのツールチェインの Rome について、その思想とコードを読んだ結果の現状について。 Rome Frontend Toolchain この記事は公式ドキュメント以外にもソースを読んで得られた undocumented な部分も含んでいるので、すぐ古くなる。その前提で読むように。 問題の認識とその解決手段 フロントエンドの最適化は実行前のプリプロセスに、エコシステムの開発リソースの多くが当てられている。Node のツールチェインが発達するにつれて、自前の パーサ+AST 定義を持つ実装が増えていった歴史がある。 acorn(estree) babel prettier typescript terser それぞれのツールの生成する AST はそのツールの都合で微妙に/もしくは大幅に定義がずれている。typescript に至っては完全に別物。こ

                                                                  大統一 Node ツールチェイン Rome の野望 現状の実装
                                                                • REST API開発に特化したWebフレームワークがもたらす生産性の向上 | IIJ Engineers Blog

                                                                  皆さんはREST APIの開発にどのようなフレームワークをお使いでしょうか? これまで、個人的には Flask 等の軽量なWebフレームワークを使って開発することが多く、REST API開発に特化したWebフレームワーク(以下、APIフレームワークと呼ぶ)を使った経験はありませんでした。 しかし先日、業務で Django REST Framework に触れる機会があり、REST APIの実装に必要な機能の多くが提供されていて、圧倒的に少ないコーディング量で開発が完了することを実感できました。例えば、フィルタリング(URLクエリストリングで検索条件等を指定し、取得する値を絞り込む)機能は、一から実装するとなると文字列をパースして、バリデーションして、クエリに渡して……、と結構面倒ですが、Django REST Frameworkではビルトイン機能として提供されているので、最小限のコードで実

                                                                    REST API開発に特化したWebフレームワークがもたらす生産性の向上 | IIJ Engineers Blog
                                                                  • GraphQL と Prisma から考える次のN年を見据えた技術選定 / Architecture decision for the next N years at StudySapuri

                                                                    JSConf JP 2021 で登壇した資料です #jsconfjp #jsconfjp_b Links: [Active Recordから考える次の10年を見据えた技術選定](https://speakerdeck.com/yasaichi/architecture-decision-for-the-next-10-years-at-pixta) [GraphQL を活用したスキーマ駆動開発の実践](https://speakerdeck.com/qsona/schema-driven-development-with-graphql) [GraphQL を利用したアーキテクチャの勘所 / Architecture practices with GraphQL - Speaker Deck](https://speakerdeck.com/qsona/architecture-pract

                                                                      GraphQL と Prisma から考える次のN年を見据えた技術選定 / Architecture decision for the next N years at StudySapuri
                                                                    • GitHub、パーソナライズした「あなたがコントリビュートしやすいオープンソースのイシュー」を機械学習で推奨してくれる機能など公開

                                                                      GitHub、パーソナライズした「あなたがコントリビュートしやすいオープンソースのイシュー」を機械学習で推奨してくれる機能など公開 オープンソースになにか貢献したいと考えたとしても、どこから手を付けたらいいのか、自分が貢献できそうなプロジェクトやイシューはどれか、選択するところから始めなければならないとすると、貢献へのハードルはやや高いものになってしまいます。 GitHubはこうした課題を解決し、オープンソースへの貢献をより手軽に行えるよう、ユーザーにとって貢献しやすいオープンソースのプロジェクトやイシューを推奨する新機能を発表しました(発表は約1カ月前の1月22日でしたので、やや少し前のことですが)。 この機能は大きく以下の3つで構成されます。 興味のある分野のオープンソースプロジェクトを推奨 特定の分野に興味があり、その分野のオープンソースを探しているのであれば、「github.com

                                                                        GitHub、パーソナライズした「あなたがコントリビュートしやすいオープンソースのイシュー」を機械学習で推奨してくれる機能など公開
                                                                      • Node.js,Python,RubyなどのWebアプリを完全無料でホスティング可能な「Unubo」を使ってみた! - paiza times

                                                                        どうも、まさとらん(@0310lan)です! 今回は、フロントエンドによる静的なWebページだけでなく、Node.jsなどのサーバサイドも含めた動的なWebアプリを無料でホスティングしてくれるサービスをご紹介します。 GitHubのリポジトリと連携することで、とにかくWebアプリを公開するまでの作業が簡単かつ高速に実現できるのが大きな特徴です。 サーバレスによる実行も可能なので、ご興味ある方はぜひ参考にしてみてください! 【 Unubo 】 ■「Unubo」の使い方 それでは、「Unubo」をどのように使っていけば良いのか見ていきましょう! まずは、サイトにアクセスしたら【SIGN UP】ボタンをクリックします。 無料のユーザー登録画面が表示されるので、ユーザー名・メールアドレス・パスワードを入力しましょう。 登録したメールアドレス宛にリンクが送られてくるので、それをクリックすれば登録完了

                                                                          Node.js,Python,RubyなどのWebアプリを完全無料でホスティング可能な「Unubo」を使ってみた! - paiza times
                                                                        • 実行環境依存のコードに対してテストを書く考え方

                                                                          社内用の啓発記事ですが、閉じる理由がないのでここに投げます。 ブラウザにべったりなコードを書いてると、ブラウザや node.js 固有の環境をインラインで記述してしまうことが多々あると思います。 あえてダメダメなブラウザ向けのエントリポイントの例を書きます。 // main.ts let id = localStorage.get('id'); if (!id) { id = `${navigator.userAgent}-${Math.random()}`; localStorage.set('id', id); fetch('/auth', { method: 'POST', credentials: 'include', body: JSON.stringify({ id, at: Date.now(), }), headers: {'Content-Type': 'applicat

                                                                            実行環境依存のコードに対してテストを書く考え方
                                                                          • Effective Deno

                                                                            この本では、Denoを有効に扱うための「依存関係の管理」や「パーミッションの取り扱い」などに関する様々なノウハウをまとめています。 この本を読めば、Denoを有効に活用するためのノウハウを一通り得られることを目標にして書きました。 Denoは頻繁にアップデートが行われているため、それに合わせてこの本の内容も継続的に更新していく予定です。

                                                                              Effective Deno
                                                                            • はじめに - NestJSの強化書 βversion

                                                                              本書の目標は、本読者がNestJSをすぐに実務で利用できる(具体的に言えばNestJSで簡単なプロダクトを開発できる)ように、最短ルートに読者を導く一冊になることです。本書は、NestJSの網羅的なドキュメントではありません。取り扱う内容は頻出する機能に絞って、「実務でNestJSを扱うなら、最低限ここだけは理解しておこう」「これさえ押さえておけば実務でも安心できる」という観点で執筆しています。 本書はNestJSを中心に取り扱いますが、実務上、必要になる知識としてJavaScriptやTypeScriptの仕様やフロントエンドフレームワークのReactやVueについても扱います。

                                                                              • node.js のメトリクスの計測、ベンチマークの改善、Docker イメージの絞り方を勉強した

                                                                                フロントエンドのパフォーマンス計測は得意なのだが、サーバーサイド node.js のメトリクスの取り方はあまり知らなくて、いつも勘でやりがちだった。最近は業務でこの周辺で困ることが増えたので、勉強しなおした。 また、最近使ってみたかった cloudflare workers の制限で、メモリ 128MB、CPU 時間 50ms という制約があり、このためにも Node.js の CPU のメトリクスを計測できるようになっておく必要があった。 という目的を踏まえて、今回は OS やデータベースの最適化は扱わず、ネットワークとアプリケーション層だけに絞って学習した。あと仕事の Docker イメージのサイズにも悩んでたので、ここも。 (あと ISUCON 参加者が楽しそうだったのもある。 ISUCON のチューニング対象にフロントエンドは含まれないので…) 計測対象 今回実験したリポジトリはこ

                                                                                  node.js のメトリクスの計測、ベンチマークの改善、Docker イメージの絞り方を勉強した
                                                                                • ちょっと複雑なシェルスクリプトをJavaScriptで書く - lacolaco-engineering

                                                                                  ちょっと複雑なシェルスクリプトを https://github.com/google/zx を使って書くとJavaScriptプログラマにとってはメンテナンスしやすい /lacolaco/lacolaco.iconはzx歴 3-4ヶ月ってところ (2021-08) 嬉しいところ async/awaitが使える 配列が扱いやすい モジュールで再利用しやすい 他のNode.jsライブラリと併用できる Prettierでフォーマットしやすい Lintしやすい エディタ支援が安心 Made by Google 微妙なところ JavaScriptプログラマ以外にとっては無用 とはいえシェルスクリプトによほど慣れてる人以外はよく整理されたJavaScriptのほうがセマンティクスを読み取りやすいのではないか スクリプト自体はこんな感じ(公式READMEより) code:js #!/usr/bin/en

                                                                                    ちょっと複雑なシェルスクリプトをJavaScriptで書く - lacolaco-engineering