はじめに 社内業務を効率化するためのツールとして、キャッチアップも兼ねてDenoでCLIを作ってみました。 Cliffyの使い方についてのメモや、Denoを触る上で迷ったところをまとめていきます。 Denoのインストール まずはDenoをインストールします。 詳しいインストール方法は公式サイトを参照ください。 MacOSの場合は以下のコマンドでインストールできます。
slide-ai-codegen.md marp theme paginate true gaia true LLMによるフロントエンド生成自動化 mizchi | Plaid Inc TechFeed Expert Night 31 LLM 使ってますか? 便利ですよね ChatGPT / GitHub Copilot WebUI じゃなくて CLI で自動化したいですよね? 黎明期でまともにモジュール化しても無駄そうだし、 Deno の書き捨てスクリプト量産するぞ! Deno for LLM 設定や依存のインストール不要のTS実行環境 書き捨ての CLI スクリプトが書きやすい => 実験しやすい npm 資産が使える import {z} from "npm:zod" コード評価に Deno Sandbox を用意できる(後述) @luca/esbuild-deno-loader で
去年末ぐらいから Deno を使う割合がグッと増えてきた。最近のJS関連は7割ぐらい deno 環境の VSCode でコードを書いている気がする。 今回はいくつかの実例を示しながら、実際に Deno 使えるじゃんというイメージを持ってもらうためのユースケースを紹介していく。 というか、 deno が普及してくれないと、自分が作ったツールの紹介を全部 deno のインストールから書かないといけなくなる。みんなインストールしといて。 最初に: なぜ Deno を使いたいか 一番の問題点、Node は新しいプロジェクトを一式整えるための手間が非常に重い。 とくに ts で書いたものを他の環境に渡すための方法が未だにしんどい。ある環境で動いたコードをそのままコピーしても、プロジェクト設定の非互換を踏む可能性が非常に高い。 deno にそういう側面がないとは言わないが、非常に少ない。とくに TS
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など後
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 version Jav
自分はフロントエンドのロジックを考えるのは得意なんですが、CSS は苦手です。 なので 自分は AI にコード変更を依頼して実行結果を目視でプレビューしつつ、その生成結果を受けいれるかどうかの判断だけすればよくね?と考えて、それを CLIとして実装してみました。 ボタンの色を書き換えるという簡単な例ですが、こんな感じで動きます。 主に React Component の修正をターゲットにしていますが、class(Name) を書き換えることを優先するプロンプトを与えているので、ロジックを保ちつつ、見た目を綺麗にするためのツールになっています。 実装した背景 vscode ターミナル上で画像を表示できる OpenAI API はgpt-4-vision-preview のモデルで画像をアップロードして認識させることができる これらを使って、vscode terminal で実行することを前提
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
「日本人」を理由にしたくないし、「コードは全世界共通語」なのは分かっているけど、自分が日本人で日本語を母国語としていることはOSSにおいて不利になる。 この2年間のHonoの開発をしてきた経験で分かったことだ。 そこに目を瞑ってはいけないし、自覚することで世界と戦えるかもしれない。今回はそのことについて書こうと思う。 8k 現在、HonoのGitHubスター数は8,000を超えた。 これはとんでもない数字なんだけど、もっと伸びるべきで、早く1万を超えなくはいけない。 npmのダウンロード数は週間「46,000」とこれは相対的に低く、こちらも伸びるべきである。 数字が全てではないが、こうした数字は昨今のOSSにとって「一番の」指標であることは確かだ。 だから戦うことはこの数字を伸ばすことである。 なぜ「戦う」のか なんで「戦う」というおっかない言葉を使い、そして戦わなくてはいけないのか。 ま
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": "
で、GitHub Sponsorsを始めたところ多数のご支援をいただくことができたことを書きました。 その後、OSS活動を細々と続けていたところ、JavaScript/TypeScript ランタイムであるDenoの開発を行っている Deno Land Inc.にジョインすることになりました。 ジョインまでの流れ 上記の記事で書いたように、deno_lint などのDeno関連のプロジェクトにコントリビュートをしていました。定期的にコントリビュートしていると、他の人からのPull Requestのレビューなどもお願いされるようになります。Approveをすることはできますが、mergeの権限はありませんでした。その他にも、issueをクローズするための権限もなく、整理のためにクローズしたいissueがあっても、メンテナに依頼をする必要がありました。 大した手間ではなかったものの、メンテナ権
Home Deno/Javascript Webrender Dynamic modules FAQ Native Hackers Handbook emacs-ng# A new approach to Emacs homepage • Deno/Javascript • webrender • ng-module • handbook • faq Intro# emacs-ng is based off of the master branch of emacs, and regularly merges using Github Actions(Runs at 00:00, only on Saturday). The last merged commit is fad7109e52 (06 30 2024). Motivation# The goal of this fork is
半年程前に以下のような記事を書きました。 この半年の間に、Deno本体でnpmパッケージサポートが入るなどいくつか大きな動きがあったため、この記事ではそれらの動向について紹介いたします。 Deno本体でnpmパッケージの読み込みがサポート Deno v1.25でDeno本体にnpmパッケージのサポートが入りました。 以下のように、npm:<パッケージ名>[@<バージョン>]形式のURLを指定することで、Denoからnpmパッケージを直接importすることができます。 deno.land/xなどで公開されているパッケージと同様に、npm:で指定されたnpmパッケージについては、deno runなどのコマンドを実行する際に、npmレジストリから自動的にダウンロードされ、グローバルキャッシュ(DENO_DIR)に保存されます。 TypeScriptサポートについて TypeScriptの型定義
2022年4月、Deno に以下のバグが報告されました。 fetch API を使って 300KB ぐらいあるファイルをアップロードすると、一定確率でアップロードされたファイルが壊れるというバグの報告です。 報告者によれば、1.20.6 まではバグは発生しておらず、1.21.0 から発生するようになったという事です。1.20.6 の次のリリースが 1.21.0 なので、パッチバージョン1個分まで、バグの発生時期が特定されている状態です。 fetch 周りは自分はほぼ実装していないので「担当範囲ではない」感覚だったので、普通にスルーしていました。 自分に限らず、Deno Land コアチームの誰もこの issue にピンと来る人が居なかったようで、stale ボット (数ヶ月進捗の無い issue を自動的にクローズしようとするボット) に2回もクローズされかけていました。Deno の st
Slackの「次世代プラットフォーム」がこの記事を書いてる2週間ほど前、しれっとパブリックベータになりました。 今回はこの公開したてのプラットフォームでアプリをつくってみたので、それを紹介しつつ、感想を書きます。 全く新しいプラットフォーム 「new Slack platform」と謳う新しいプラットフォームは現在の「Slack API」を使ったSlackアプリをつくるものとは別物です。 パブリックベータになったばかりでかつ、Workspaceが有料プランではないと今のところデプロイできません。 それもあってか公式以外に情報が皆無の状態で、手探りながら試してみました。 結果わかったのはとにかく「今までとは全く違う」ということでした。 特徴を紹介しましょう。 Slackのクラウドで動く まずこれが一番大きいです。 アプリケーションをSlackのクラウドへデプロイすることになります。 いわゆる
Fresh is a new full stack web framework for Deno. By default, web pages built with Fresh send zero JavaScript to the client. The framework has no build step which allows for an order of magnitude improvement in deployment times. Today we are releasing the first stable version of Fresh. Client side rendering has become increasingly popular in recent years. React (and React-like) pages allow program
Deno、Node.js、Cloudflare Workersなど、非Webブラウザ系JavaScriptランタイムのコード互換を目指す「Web-interoperable Runtimes Community Group」(WinterCG)が発足 JavaScriptはWebブラウザで実行することを想定して開発されたプログラミング言語ですが、現在ではNode.jsやDenoなどに代表されるようにWebブラウザ以外の環境でも実行されるようになってきました。 そこで、こうした非Webブラウザを中心としたJavaScriptランタイムにおける相互運用性の改善を目指したコミュニティグループ「Web-interoperable Runtimes Community Group」(WinterCG)がW3Cで発足しました。 設立メンバーはDeno、Cloudflare、Shopify、Vercel
なぜ npm ツールチェインで消耗した こういうところでシュッと deno を入れておくことで、あわよくば本番で使う準備をする 経緯 久々に eslint の設定を見直したらやたら長大な感じでメンテがしんどくなった npm/yarn workspace で monorepo 化した際に、様々な eslint のバージョンが混在して peer-deps の管理が困難になった deno に組み込まれてる lint, fmt は deno かどうかはあまり関係なく、単に typescript なら使える 中身は https://dprint.dev/ と https://github.com/denoland/deno_lint deno lint は eslint の recommended 相当のものは実装してある eslint + typescript をメンテするより、 eslint 吹
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く