並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 81件

新着順 人気順

denoの検索結果1 - 40 件 / 81件

  • OSSで世界と戦うために - ゆーすけべー日記

    「日本人」を理由にしたくないし、「コードは全世界共通語」なのは分かっているけど、自分が日本人で日本語を母国語としていることはOSSにおいて不利になる。 この2年間のHonoの開発をしてきた経験で分かったことだ。 そこに目を瞑ってはいけないし、自覚することで世界と戦えるかもしれない。今回はそのことについて書こうと思う。 8k 現在、HonoのGitHubスター数は8,000を超えた。 これはとんでもない数字なんだけど、もっと伸びるべきで、早く1万を超えなくはいけない。 npmのダウンロード数は週間「46,000」とこれは相対的に低く、こちらも伸びるべきである。 数字が全てではないが、こうした数字は昨今のOSSにとって「一番の」指標であることは確かだ。 だから戦うことはこの数字を伸ばすことである。 なぜ「戦う」のか なんで「戦う」というおっかない言葉を使い、そして戦わなくてはいけないのか。 ま

      OSSで世界と戦うために - ゆーすけべー日記
    • 僕の考えた最強の Python 開発環境 (2024)

      はじめに こんにちは, 普段は情報科学専攻の大学院生をしながらバックエンドエンジニアをやっている @koki-algebra です. 普段は Go をよく書いているのですが, 大学でやっている機械学習の研究では Python を使うことがほとんどです. Go のエコシステムに慣れきった私は Python の混沌とした環境に耐えきれず, 最強の開発環境を整えることを決意しました. 具体的には Package Manager, Formatter, Linter, Type Checker, Test Tool を選定し, VSCode の DevContainer を用いてポータビリティに優れた開発環境を作ることを目指します. また, Deep Learning では GPU が必須である場合が多いので, GPU 環境も同時に整えたいと思います. 以下のレポジトリが今回考えた開発環境のテンプ

        僕の考えた最強の Python 開発環境 (2024)
      • RustでWebバックエンドを書き始めてから1年くらい経った

        はじめに 僕はDeno Land Inc.でDenoを利用したサーバレスエッジホスティングサービスのDeno Deployを開発するチームに所属しています。OSSのほうのDenoのメイン言語はRustで、Deno Deployのバックエンドも同様にRustで書かれています。 今年のアドベントカレンダーで一休さんから以下の記事が公開されましたが、日本でもRustをWebバックエンドの言語として採用する企業がじわじわと増えてきている印象があります。 Deno DeployのバックエンドをRustで開発してきて、RustでWebバックエンドを書くことのメリットやデメリットをいくつか感じたので、この記事で紹介したいと思います。 Deno Deployの構成 まず、ざっくりとDeno Deployのバックエンドの構成を紹介します。 多くのコンポーネントがありますが、ここではどのようにRustを利用し

          RustでWebバックエンドを書き始めてから1年くらい経った
        • Deno first でやっていく

          去年末ぐらいから Deno を使う割合がグッと増えてきた。最近のJS関連は7割ぐらい deno 環境の VSCode でコードを書いている気がする。 今回はいくつかの実例を示しながら、実際に Deno 使えるじゃんというイメージを持ってもらうためのユースケースを紹介していく。 というか、 deno が普及してくれないと、自分が作ったツールの紹介を全部 deno のインストールから書かないといけなくなる。みんなインストールしといて。 最初に: なぜ Deno を使いたいか 一番の問題点、Node は新しいプロジェクトを一式整えるための手間が非常に重い。 とくに ts で書いたものを他の環境に渡すための方法が未だにしんどい。ある環境で動いたコードをそのままコピーしても、プロジェクト設定の非互換を踏む可能性が非常に高い。 deno にそういう側面がないとは言わないが、非常に少ない。とくに TS

            Deno first でやっていく
          • HonoとDenoで社内ツールを作ってみた - RAKSUL TechBlog

            こんにちは!ラクスルの灰原です! 軽量かつ高速なWebフレームワークであるHonoと、新進気鋭のJSランタイムであるDenoを使って、社内ツールを作ってみましたので紹介します。 作ったツール 技術スタック index.tsx の内容 Tips HonoでTwindを使う HonoのJSXでAlpine.jsを使う Hono+Denoでesbuildを使う おわりに 作ったツール テックブログ向けのアイキャッチ画像ジェネレータを作りました。 タイトルを入力して、 背景画像と文字色を選んで、 文字の位置と大きさを調整して、 後は「Download」ボタンを押せば画像が手に入ります。 これは以前、弊社デザイン組織で作られた「Zoom背景ジェネレータ」に多分に影響されています。 こちらのデザイナーブログも是非ご覧ください! note.com 技術スタック このツールは利用頻度がそこまで多くないと思

              HonoとDenoで社内ツールを作ってみた - RAKSUL TechBlog
            • JavaScriptランタイムのBun、インストール不要の実行ファイル生成が可能に。Webpackより200倍以上高速とするバンドラがβ版、Puppeteerにも対応

              JavaScriptランタイムのBun、インストール不要の実行ファイル生成が可能に。Webpackより200倍以上高速とするバンドラがβ版、Puppeteerにも対応 サーバサイドで実行可能なJavaScriptランタイム「Bun」は、5月に登場したバージョン0.6で、Bunをインストールすることなく、配置することでアプリケーションを実行できる単独の実行ファイルを生成できる「bun build」機能が搭載されました。 同じくバージョン0.6で高速なバンドラ「Bun Bundler」もβ版となり、6月に登場したバージョン0.6.7ではDiscordのボットを操作するDiscord.jsやWebブラウザを操作するPuppeteerなどの動作も確認されています。 下記はBunの開発者であるJarred Summer氏のツイート。 Standalone executables are coming

                JavaScriptランタイムのBun、インストール不要の実行ファイル生成が可能に。Webpackより200倍以上高速とするバンドラがβ版、Puppeteerにも対応
              • Deno、モダンなJavaScript/TypeScriptに最適化したパッケージレジストリ「JSR」パブリックベータ公開。Node.js、Bun、Cloudflareなどにも対応

                JavaScript/TypeScriptランタイムの「Deno」を開発提供しているDeno Land Inc.は、モダンなJavaScriptおよびTypeScriptに最適化した新しいパッケージレジストリ「JSR」をパブリックベータとして公開しました。 現在、JavaScriptのパッケージレジストリは、Node.js用に構築され、GitHubが運営するnpm(Node Pacage Manager)が事実上の標準となっています。 参考:GitHubがnpmの買収を発表、JavaScriptのパッケージ管理サービス。将来的にはGitHubとnpmを統合へ npmにはさまざまな機能を備えたパッケージモジュールが大量に登録されており、この豊富なパッケージモジュールの存在がNode.jsの大きな利点となっています。そのため、現在ではDeno、Bun、Cloudflare Workersなど後

                  Deno、モダンなJavaScript/TypeScriptに最適化したパッケージレジストリ「JSR」パブリックベータ公開。Node.js、Bun、Cloudflareなどにも対応
                • Deno、SQLiteベースのキーバリューストア「Deno KV」のスタンドアロン版を公開。ソースコードもオープンに

                  Deno、SQLiteベースのキーバリューストア「Deno KV」のスタンドアロン版を公開。ソースコードもオープンに JavaScriptランタイムを提供するDenoは、SQLiteベースのキーバリューストア「Deno KV」をスタンドアロンで実行可能なバイナリの提供開始を発表しました。オープンソースとして公開もされています。 スタンドアロン版Deno KV(もしくはSelf-hosted版Deno KV)は、Denoと接続してバックエンドデータベースとして利用可能です。 これまでのDeno KVとの違い これまでDenoは、Deno KVを2つの方法で提供してきました。 1つ目は、Deno自身にSQLiteを組み込み、Denoの内臓データベースとしてDeno KVを実装することで、JavaScript/TypeScriptのためのデータストアとして提供する方法です。 この方法では、Den

                    Deno、SQLiteベースのキーバリューストア「Deno KV」のスタンドアロン版を公開。ソースコードもオープンに
                  • Rustで将棋の局面画像生成、そしてCDN Edgeで動的生成 - すぎゃーんメモ

                    背景 先行・類似事例 自作のメリット Rustで局面画像生成 盤・駒画像の素材 画像処理 入出力 Generatorと下準備 Publish Web Appで使う CDN Edgeで動かす wasm-packでWebAssembly作成 Deno Deploy Vercel Edge Functions Cloudflare Workers Fastly Compute@Edge その他 まとめ Repository 背景 ATrium という AT Protocol のためのライブラリを自作している が、まったくドッグフーディングしていなかった ので、Blueskyに詰将棋の問題を放流するBotを作ってみることにした gfx氏が作ったBot を参考に というわけで、詰将棋の問題の局面を画像で投稿したい が、あまり自分好みの画像を生成できるライブラリやWebサービス等がない ので、結局それ

                      Rustで将棋の局面画像生成、そしてCDN Edgeで動的生成 - すぎゃーんメモ
                    • You don't need Node.js

                      Node.jsはいらない場合がある、むしろいらない場合の方が多いかもしれない、 そしてDenoとBunを使い分けて代替する方法を説明するという記事です。 Post Node.js ランタイムの登場 Node.js のあとにできたランタイムがいくつも登場しています。 Deno Bun WinterJS LLRT この中でも、人気であるDenoとBunを中心に考えていきます。 DenoやBunに変えるメリット これがなければNode.jsから変える必要はないと思います。 私は、以下の3つが、2ランタイムに共通して言える大きなメリットだと思います: ネイティブTypeScriptサポート 高速 Web標準 ネイティブTypeScriptサポート 現在、JavaScriptを記述するときは、TypeScriptを利用することが多いと思います。 Node.jsでTypeScriptを使うとき。tsc

                        You don't need Node.js
                      • JSR の紹介

                        JSR の紹介

                          JSR の紹介
                        • CommonJS is hurting JavaScript

                          JavaScript, the undisputed king of web development, is being sabotaged — not by a rival language or a revolutionary new technology, but by its own baggage from the past. This insidious saboteur is none other than CommonJS, the antique module system that we’ve tolerated for far too long. The rise of CommonJSAbout 15 years after its invention, JavaScript started expanding beyond the browser to the s

                            CommonJS is hurting JavaScript
                          • Denoのフロントエンド開発の動向【2023年夏】

                            半年程前に、以下のような記事を書きました。 この記事では、上記の記事から半年程の間で起きたDenoでのフロントエンド開発に関して影響がありそうな内容などをまとめていきます。 Deno本体のアップデート node:URLのサポート Deno v1.30でNode.js組み込みパッケージのimportがサポートされています。 import { EventEmitter } from "node:events"; const emitter = new EventEmitter(); 後述するesm.shの?target=denonextなどと併用すると、効果を発揮しそうです。 注意点として、node:を付与しなければNode.js組み込みパッケージは読み込むことができません。具体的には、以下のような読み込み方はサポートされていません。

                              Denoのフロントエンド開発の動向【2023年夏】
                            • 丁寧なDeno+JSX - laiso

                              *1 サーバーレスFunctionsぐらいの気軽さでサーバーアリのWebアプリをデプロイしたいという時がある。主に自分たちだけが使うようなツール系のやつ。 その時に今までのようにSPA+APIアーキテクチャではなく、モノリシックなサーバーサイドアーキテクチャにしつつもフロントエンド開発と同じツールチェインを使いたい、と前から思っていた。 これは単にReactメタフレームワークでも一気通貫に時短で作れそうだけど、個人の楽しみのための活動なので、一旦世間のトレンドからは離れて自分が本当に必要だと思った要素技術のみを最小限に使って理解しながら試行錯誤したい。 ※ただ第三者に提供するシステムとかは安全に作られた既存フレームワークに乗るのがいいというのもある しばらく考えてみたところ、私にとっては「TypeScriptでJSXをテンプレートエンジンに使ってHTMLを書けるだけでよい」という所に落ち着

                                丁寧なDeno+JSX - laiso
                              • previs: 面倒なマークアップは AI にやらせる

                                自分はフロントエンドのロジックを考えるのは得意なんですが、CSS は苦手です。 なので 自分は AI にコード変更を依頼して実行結果を目視でプレビューしつつ、その生成結果を受けいれるかどうかの判断だけすればよくね?と考えて、それを CLIとして実装してみました。 ボタンの色を書き換えるという簡単な例ですが、こんな感じで動きます。 主に React Component の修正をターゲットにしていますが、class(Name) を書き換えることを優先するプロンプトを与えているので、ロジックを保ちつつ、見た目を綺麗にするためのツールになっています。 実装した背景 vscode ターミナル上で画像を表示できる OpenAI API はgpt-4-vision-preview のモデルで画像をアップロードして認識させることができる これらを使って、vscode terminal で実行することを前提

                                  previs: 面倒なマークアップは AI にやらせる
                                • Denoのフロントエンド開発の動向【2024年冬】

                                  半年程前に、以下のような記事を書きました。 この記事では、上記の記事から半年程の間で起きたDenoでのフロントエンド開発に関して影響がありそうな内容などをまとめていきます。 Deno本体のアップデート 直近半年ほどでDenoに導入された機能からフロントエンド開発に影響しそうなものについていくつか紹介します。 npmパッケージの対応状況について 大きな点として、Deno v1.35からAstroが動作するようになったようです。 それ以外にはDenoでNext.jsを動かすための試みがいくつか進んでいるようです。next buildやnext devを動かすための対応がいくつか入っています。 また、直近で公開されたロードマップではSvelteKit, VuePress, Qwik, Remixなどを動かすための対応を進めていくことが検討されているようです。 Remixについては公式でRemix

                                    Denoのフロントエンド開発の動向【2024年冬】
                                  • 社内で使う npm パッケージの作成に Deno を採用した話 - Cybozu Inside Out | サイボウズエンジニアのブログ

                                    こんにちわ。フロントエンドエキスパートチームの@nus3_です。 最近、社内用の npm パッケージを作る必要があり、そのパッケージは依存が少なく、実装もシンプルだったので、npm パッケージの作成には Deno と dnt を採用しました。 dnt とは dnt は Deno で実装したモジュールを CJS、ESM に対応した npm パッケージに変換してくれるビルドツールです。 使い方も簡単で、次のように dnt が提供するbuild関数にエントリーポイントや出力先などの必要な情報を渡すだけです。 import { build } from "https://deno.land/x/dnt@0.38.1/mod.ts"; await build({ entryPoints: ["./mod/index.ts"], // Denoで実装したモジュールのエントリーポイント outDir:

                                      社内で使う npm パッケージの作成に Deno を採用した話 - Cybozu Inside Out | サイボウズエンジニアのブログ
                                    • JSのデザインパターンライブラリを試作した話と、それをJSRにアップロードしたら無茶苦茶簡単で感動した話

                                      デザインパターンライブラリを作った JSRの話だけ読みたい人は読み飛ばしてもOKです。 JavaScriptのtry-catchはC++の影響を受けており、以下の特徴があります。 (A) throwは大域脱出的である。 (B) try-catchはブロック内の全ての例外副作用に対して一括で作用する。 (C) try-catchは文であり、値を返せない。 (D) TypeScriptにおいて、例外型は明示されない。 このうち (B), (C), (D) の問題を解決するため、RustのResultや類似のパラダイムをJSに輸入する試みがしばしば行われています。しかしこの解決手段にはいくつかの問題があり、 (E) rethrowの専用構文がないためボイラープレートが増える。 (F) 出力ストリームに対するwriteなど、戻り値を持たない副作用関数に対するエラーハンドリングが抜け落ちないようにL

                                        JSのデザインパターンライブラリを試作した話と、それをJSRにアップロードしたら無茶苦茶簡単で感動した話
                                      • モノレポの手癖を deno で CLI ツールを作って楽にしたい

                                        deno で CLI ツールを作っていたら楽しくなって色々作っていた。 課題: モノレポの諸々の操作がだるい npm/pnpm/yarn の workspace を使っていると、次のようなディレクトリ移動が段々面倒になってくる。 foo を build して bar を build してルートから bar のテストを流す、みたいなことをするとこういう感じになる。 $ cd packages/foo $ pnpm build $ cd ../bar $ pnpm build $ cd ../.. ## コマンドの中身を確認 $ cat package.json | jq ".scripts" { "test": "pnpm test:foo && pnpm test:bar", "test:foo": "cd packages/foo && pnpm test", "test:bar": "

                                          モノレポの手癖を deno で CLI ツールを作って楽にしたい
                                        • The power of Web-standards

                                          Deno Fest - 2023.10.20 @Tokyo Akihabara Yusuke Wada

                                            The power of Web-standards
                                          • How we built JSR

                                            We recently launched the JavaScript Registry - JSR. It’s a new registry for JavaScript and TypeScript designed to offer a significantly better experience than npm for both package authors and users: It natively supports publishing TypeScript source code, which is used to auto-generate documentation for your package It’s secure-by-default, supporting token-less publishing from GitHub Actions and pa

                                              How we built JSR
                                            • 2023年、Denoはこんなに進化していた ー Node.jsとの互換性強化、Deno.serve()、WebGPU…

                                              2月3日、Denoは「Deno in 2023」と題した記事を公開した。昨年(2023年)一年間においてDenoがどのような進化を遂げたかを解説している。 2月3日、Denoは「Deno in 2023」と題した記事を公開した。昨年(2023年)一年間においてDenoがどのような進化を遂げたかを解説している。以下に内容を抜粋して紹介する。詳細は元記事を参照していただきたい。 Nodeとnpmとの互換性強化 Denoは2023年の改善を経て、Nodeの組み込みAPIをサポートし、npmモジュールの読み込みに対応した。これによりNodeとの互換性が向上し、既存のNodeプロジェクトをスムーズにDenoに移行できるようになった。 シンプルで高速なWebサーバー Deno.serve() Denoが導入したDeno.serve()関数により、Webサーバーの作成が大幅に簡略化された。イベントループ

                                                2023年、Denoはこんなに進化していた ー Node.jsとの互換性強化、Deno.serve()、WebGPU…
                                              • zeno.zsh を活用して Node.js パッケージマネージャの違いを吸収する - エムスリーテックブログ

                                                永山です。 神話の時代、天を衝く巨塔を築こうとした高慢な人類の Node.js パッケージマネージャは様々に引き裂かれたと言われています。 現代においてよく使用されているものだけでも npm, Yarn, pnpm などがあり、エムスリー社内でもプロジェクトによってどのパッケージマネージャが採用されているかはバラバラです。 それぞれのパッケージマネージャは異なるコマンドラインインタフェース (npm / yarn / pnpm) によって操作する必要があるため、作業するプロジェクトによって適切なコマンドを呼び分けなければなりません。めんどくさ。 本記事では Zsh プラグインである zeno.zsh を用いてこれらパッケージマネージャの差異を吸収することで快適な開発体験を実現する方法、およびその過程で模索した zeno.zsh の設定ファイルの TypeScript 化の試みについて紹介し

                                                  zeno.zsh を活用して Node.js パッケージマネージャの違いを吸収する - エムスリーテックブログ
                                                • Deno Fest を開催しました

                                                  2023年10月20日にとらのあなラボ社と Deno 社の共催で、Deno Fest というイベントを開催しました。開催の様子は YouTube の配信や 𝕏 のハッシュタグ #deno_festなどから確認できます。 Deno Fest 全セッションが終了しました。 登壇者、参加者の皆さん、ありがとうございました!! #deno_fest #deno #toranoana_deno #toralab pic.twitter.com/LEAfCovABo — 虎の穴ラボ (@toranoana_lab) October 20, 2023 開催のきっかけDeno 社では普段は全員がフルリモートで働いており、オフィスなどは持っていません。その代わり年に数回 Deno Offsite という社内イベントを開催していて、1週間メンバー全員が世界中から1つの場所に集まって、色々なトピックについて議

                                                  • Introducing JSR - the JavaScript Registry

                                                    Modules are published to JSR as TypeScript source code. API documentation generation, type declarations for Node-like environments, and transpilation are all handled by JSR. Module authors can focus on writing TypeScript only. Read on for more context on how and why we built JSR, how you can use it today, and how you can be involved in the project! Introducing JSR - the slightly longer versionJava

                                                      Introducing JSR - the JavaScript Registry
                                                    • JSR: the JavaScript Registry

                                                      JSR is designed for TypeScript. You publish TypeScript source, and JSR handles generating API docs, .d.ts files, and transpiling your code for cross-runtime compatibility. JSR packages are distributed as web-standard ECMAScript modules. JSR isn't a replacement for the npm registry; it's a superset of npm. JSR modules can be used with any JavaScript package manager, and in any project with a node_m

                                                      • WinterJSとは何者か?ベンチマークでの比較検証

                                                        概要 2024年3月12日にこんなニュースが飛び込んできました。 WinterJSの1.0が発表されたとのことで、今回はWinterJSとは何者なのかについてをまとめていき、検証していきます。 WinterJS WinterJS とは、Rustで書かれたJavaScriptランタイムでSpiderMonkeyエンジンを使用して、javaScriptを実行します。 Rustで書かれたと言っているのは、HTTPリクエストなどの処理や、JavaScriptイベントのループを処理をするRust の非同期ランタイムTokioを使用しているからです。 また、WinterJSは、WebAssemblyにコンパイルすることもできるようです。 そして、一番重要なことは、JavaScriptにおけるHTTP Serverとしての性能について、処理速度がとんでも無く早いということを謳っている点ですね。 今回は、

                                                          WinterJSとは何者か?ベンチマークでの比較検証
                                                        • Denoの静的サイトジェネレータ`Lume`の紹介

                                                          2023年12月に静的サイトジェネレータであるLumeのバージョン2がリリースされました. 私は個人ブログを書くのに GitHub Pages + Lume を利用しているので,年末はLumeのバージョンアップなどの作業をしていたのですが,改めて体験が良いなと思ったのでLumeの紹介をしたいと思います. 前提知識 GitHub Pages GitHub PagesはGitHub社がプロジェクトのプロジェクトのウェブサイトを提供することを目的に,リポジトリに配置してある静的ファイル(HTMLやJSなど)をホスティングしてウェブサイトを公開してくれるサービスです.@a-skuaというアカウント名の場合,a-skua.githu.io をというリポジトリを作成すると,https://a-skua.github.io[1]というURLのウェブサイトを作ることができます. GitHub Pages

                                                            Denoの静的サイトジェネレータ`Lume`の紹介
                                                          • Deno ユーザーは https import と jsr import のどちらを使うべきか?

                                                            JSR meetup で出た質問の中で、Deno ユーザーは JSR をどう見るべきかについての質問がいくつか出てきたので、その中からいくつかの質問を抜粋してまとめました。 Q. Deno ユーザーは https import と jsr import のどちらを使うべきか? A. 可能な限り JSR import を使うべき。 理由1. 依存の dedupe (重複排除) が出来るのは jsr import だけなので JSR を使う場合の大きなメリットの一つとして semver range による依存の dedupe (重複排除) があります。 https import の場合、依存の中にマイナーバージョン違いや、パッチバージョン違いのモジュールがあった場合にそれらはすべて異なるモジュールとして扱われていました。

                                                              Deno ユーザーは https import と jsr import のどちらを使うべきか?
                                                            • TypeScript で Vim / Neovim の設定を書く!

                                                              この記事は Vim 駅伝 2023/06/09(金) の記事です。 前回は sontixyou さんの Neovimで今開いているファイルのパスをコピーするスクリプトを作った話 です。 次回は 2023/06/12(月) に公開される予定です。 はじめに Vim / Neovim にはエディタの設定を行うスクリプト言語として、 Vim script というものがあります。 また、最近だと Vim では Vim9 script 、 Neovim では Lua を使用して設定ファイルを書くこともできます。 ですが、 Vim9 script は Vim でしか使用できず、 Lua は Neovim でしか使用できません。(一部は Vim でも使用できます。) この Vim と Neovim の差は徐々に大きくなってきている気がしています。 そんな中、 Deno を使用して Vim / Neovi

                                                                TypeScript で Vim / Neovim の設定を書く!
                                                              • JSR Meetup に参加してきた

                                                                JSR Meetup JSR が気になっていたことや、Deno の中の人が主催というのも良いなと思って、ささっと参加してきました。自分用に雑にまとめておきます。 https://jsr.io/ https://github.com/jsr-io/jsr ハッシュタグ 自分のメモ Deno Land Inc. が開発、運用しているパッケージレジストリ プライベートは今のところ予定されていない TypeScript をそのまま登録できる ESM 対応 OSS で開発されている 自前の JSR を立てることもできる 積極的に改善されていきそう ドキュメントが生成される Web UI がモダン Deno が流行らないと苦しそう @std を Deno が持ってるのは他からはちょっとな ... って思われそう キレイな npm 雑感 印象としては使ってみても良さそうという感じです。ただ無理に npm

                                                                  JSR Meetup に参加してきた
                                                                • Deno/Node を vscode ワークスペースで共存させたい

                                                                  次の記事の 2023 年版です。 tl;dr 次のコードを "deno.enable": true にしない(Node環境のまま)Node+Deno両方の型チェックが通る vscode 環境にする。 // .ts 拡張子を許可 import { dep } from "./dep.ts"; // node_modules から npm module を解決 import ts from "typescript"; // deno/node 共用で Deno に型をつける const Deno: typeof import("@deno/shim-deno").Deno = (globalThis as any).Deno ?? (await import("@deno/shim-deno")).Deno; const source = ts.createSourceFile("test.t

                                                                    Deno/Node を vscode ワークスペースで共存させたい
                                                                  • Introducing humanfs (formerly fsx): A modern filesystem API for JavaScript - Human Who Codes

                                                                    The JavaScript APIs we have today are so much better than those we had even a decade ago. Consider the transition for XMLHttpRequest to fetch(): the developer experience is dramatically better, allowing us to write more succinct, functional code that accomplishes the same thing. The introduction of promises for asynchronous programming allowed this change, along with a series of other changes that

                                                                    • Deno 1.38: HTML doc generator and HMR

                                                                      The Deno ecosystem continues to mature, and with the 1.38 release, we’re excited to introduce significant improvements to the deno doc command. Topping the list is the ability to produce static site documentation using the new deno doc --html feature, a game-changer for developers looking to share and publish their project documentation. If you already have Deno installed, upgrade to version 1.38

                                                                        Deno 1.38: HTML doc generator and HMR
                                                                      • Compiling a standalone executable using modern JavaScript/TypeScript runtimes

                                                                        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

                                                                          Compiling a standalone executable using modern JavaScript/TypeScript runtimes
                                                                        • 2023年のDenoの変更点やできごとのまとめ

                                                                          Denoアドベントカレンダー 24日目の記事です🎅 この記事では、2023年にDenoに関して起きた出来事や大きな変更点などをまとめます。 Denoのアップデート Node.js互換性の改善 Node.js互換性の向上のために、様々な改善や機能追加などが行われています。特に、既存のNode.jsプロジェクトをDenoで動かせるようにするための機能がいくつか導入されています。 大きな点としては、Astroが動作するようになりました。 今年、Node.js互換性に関連して実装されたもののうち、主要なものをいくつか紹介いたします。 node:URLのサポート node:形式のURLを記述することで、Node.jsの組み込みパッケージをDenoから読み込めるようになりました。 import { EventEmitter } from "node:events"; const emitter =

                                                                            2023年のDenoの変更点やできごとのまとめ
                                                                          • Denoで困ったときはZigで何とかなるかもしれない

                                                                            サードパーティライブラリが無いよ問題 いきなりネガティブな話で申し訳ございません。愚痴みたいなものです。本題ではありませんので読み飛ばしていただいて問題ありません。 Denoユーザーの1人としての個人的な印象として、Denoの勢いは2023年に入った頃から低迷しているように感じます。2022年末からnpm対応によってNode.jsの資産を使えるようになったにも関わらずです。実際のユーザー数はDenoチームではないので分かりませんが、登場から数年経って真新しさも無くなったので、どんなサービスにもありがちなことなのかなと思います。 ありがちとはいえ、ただ低迷しているだけではありません。ここからNode.jsを超えるのはなかなか難しいです。なぜならnpm対応というのは、明示的にNode.jsに対して「生き残っていい」それどころか「あなたが正しい」と宣言してしまったようなものです。Node.jsの

                                                                              Denoで困ったときはZigで何とかなるかもしれない
                                                                            • Deno + dntでCJS・ESMに対応したnpmパッケージを作ろう

                                                                              3 行まとめ CJS、ESM に対応した npm パッケージが Deno + dntで簡単に作成できる Deno で開発できるので、Lint、Format、Test、TypeCheck が設定なしですぐに使える dntで作成した CJS、ESM のファイルに対して、それぞれ Node.js でもテストを実行してくれる Deno のモジュールを npm パッケージに変換するdnt Deno のdntモジュールを使うと、Deno で実装したモジュールを CommonJS(CJS) と ESM、TypeScript に対応した npm パッケージとして公開できます。 実際、今回 Deno とdntを試してみましたが、Deno には Linter、Formatter、Test などが組み込まれているので、すぐに npm パッケージの作成に取り掛かれるのが良かったです。また、CICD の自動化(Gi

                                                                                Deno + dntでCJS・ESMに対応したnpmパッケージを作ろう
                                                                              • Node.js built-ins on Deno Deploy

                                                                                We’re excited to announce that starting today, Deno Deploy supports importing Node.js built-in modules such as http, fs, and path. You can now run existing Node.js apps at the edge. Deno Deploy is a next-generation cloud platform built on JavaScript isolates. It runs your JavaScript, TypeScript, and WebAssembly at the edge, in our 35 global regions, close to your users. It scales automatically, fr

                                                                                  Node.js built-ins on Deno Deploy
                                                                                • Deno、JavaScript用データストア「Deno KV on Deno Deploy」オープンベータに。分散環境でも強い一貫性、1GBストレージまで無料

                                                                                  Deno、JavaScript用データストア「Deno KV on Deno Deploy」オープンベータに。分散環境でも強い一貫性、1GBストレージまで無料 サーバサイドやエッジでのJavaScriptランタイムを提供するDenoは、JavaScript/TypeScript用のデータストアである「Deno KV」を、同社の分散ホスティング環境であるDeno Deploy上でオープンベータとして公開したことを発表しました。 DenoはもともとNode.jsよりも優れたJavaScript/TypeScriptランタイム実現する目的で開発されたため、データストアの機能は備えていません。 そのため、Denoでアプリケーションを開発し実行する際には、データを保存するためのデータベースをユーザーが用意する必要がありました。 そこで、今年(2023年)5月に、Denoに統合されたデータストアとして

                                                                                    Deno、JavaScript用データストア「Deno KV on Deno Deploy」オープンベータに。分散環境でも強い一貫性、1GBストレージまで無料