タグ Web scratch
人気順 5 users 10 users 100 users 500 users 1000 userstextlint - Linterの作り方
[fit] textlint - Linterの作り方 自己紹介 Name : azu Twitter : @azu_re Website: Web scratch, JSer.info Book: JavaScript Primer アジェンダ Linterを作る人向けの話 Linterの考え方とアーキテクチャを一致させる 使うものを作ろう、作るために使おう textlint とは 自然言語(日本語や英語など)に対するLinter Mark... 続きを読む
記憶に残らないものをメモするためにMemory Noteという仕組みを書いた | Web Scratch
Memory NoteというプログラマブルなTodoアプリのミドルウェアを書きました。 ややこしいですが、大雑把に言えばReminder的なTodoリストを扱うREST APIをCloudflare Workersで動かす仕組みです。 単体だと何ができるのかよくわからないものですが、Todoサービスを自分用に作れる仕組みです。 対象ユーザーは主に自分です... 続きを読む
見ているサイト上に露出している機密情報(APIトークン、IPアドレスなど)を見つけるブラウザ拡張を作りました | Web Scratch
SecretlintというAPIトークンなどの機密情報がファイル内に含まれているかをチェックできるツールを書いています。 Secretlintはコマンドラインツールとして動くので、主にCIやGitのpre-commit hookを利用して、リポジトリに機密情報が入るのを防止できます。 SecretlintでAPIトークンや秘密鍵などのコミットを防止する ... 続きを読む
Next.js + Vercel + Cloudflare Workers KV + Googleスプレットシートで寄付管理サービスを作った | Web Scratch
philan.netという寄付の予算を決めて寄付した記録をつけてられるウェブサービスを作ったので、この記事では技術的な部分の解説です。 philan.net自体については、次の記事で解説しています。 寄付をするために、寄付の予算と寄付の記録をSpreadSheetベースでつける philan.net というサービスを作った | Web Scratch こ... 続きを読む
GitHub Issuesを個人用のTodo管理アプリとして使っている | Web Scratch
個人的なタスク管理ツールとしてGitHub Issueを使うようにしてその仕組みを色々と作っているので、そのアーキテクチャについてのメモ書きです。 後述しますが、GitHubをベースとすることでプログラムでの拡張性が高いというのが特徴です。 セットアップが色々と必要になるためぱっと再現しやすい感じではなかったり一部... 続きを読む
JavaScript Primer 2.0 - ECMAScript 2020に対応した入門書を公開しました | Web Scratch
ECMAScript 2020の変更に対応したJavaScriptの入門書としてJavaScript Primer 2.0.0を公開しました。 JavaScript Primerのウェブサイトから閲覧できます。 ウェブサイト: https://jsprimer.net/ サマリIssue: ECMAScript 2020の対応 · Issue #1145 · asciidwango/js-primer 変更内容の詳細はリリースノートを参照してく... 続きを読む
JavaScriptの歴史については「JavaScript: The First 20 Years」を読む | Web Scratch
JavaScript/ECMAScriptというプログラミング言語の歴史について書いた文章はWikipediaなどいろいろなものがあります。 その中でも、ECMAScript 5とECMAScript 2015のSpec EditorであるAllen Wirfs-Brockによって書かれた"JavaScript: The First 20 Years"が特におすすめです。 JavaScript: The First 20 Years JavaScrip... 続きを読む
JavaScript Primerを出版しました!/JavaScript Primerはなぜ書かれたのか? | Web Scratch
JavaScriptの入門書であるJavaScript Primerの書籍版が出版されました! JavaScript Primer 迷わないための入門書 | azu, Suguru Inatomi 次のサイトから購入できます。 物理書籍 Amazon: JavaScript Primer 迷わないための入門書 | azu, Suguru Inatomi |本 | 通販 | Amazon ヨドバシ: JavaScript Primer 迷わないため... 続きを読む
JavaScript Promiseの本 v2リリース、ES2015+に対応、Async Functionの章を追加 | Web Scratch
JavaScriptのPromiseについて学ぶ書籍であるJavaScript Promiseの本 v2をリリースしました。 Promise本 1.0.0をリリースしたのは2014年6月ですが、そこから少しづつアップデートしていました。 JavaScript Promiseの本を書きました | Web Scratch ES6がリリースされたのでPromiseについて学びましょう | Web Scratch 今... 続きを読む
クライアントサイドからサーバサイドまで破壊するテンプレートエンジンを利用した攻撃と対策
autoscale: true クライアントサイドからサーバサイドまで破壊するテンプレートエンジンを利用した攻撃と対策 - 3つのテンプレート - 自己紹介 Name : azu Twitter : @azu_re Website: Web scratch, JSer.info アジェンダ テンプレートとは テンプレートの種類(レベル) テンプレートをコンパイルする場所と問題 信頼でき... 続きを読む
GitHubで管理する個人向けブックマークシステムを書いた | Web Scratch
GitHubにブックマークをコミットして管理できるはてなブックマークみたいなブックマークシステムを書きました。 詳しいモチベーションなどについては次のスライドで発表しています。 スライド: ブックマーク管理システム: 動くアプリをとにかく早く安く作ろう はてなブックマークのAPIが2019/5/31ぐらいエラーを返すよう... 続きを読む
Markdownで年表的なタイムラインを管理するツール | Web Scratch
mdlineというMarkdownでタイムライン(年表)を書いて、HTMLなどの形式にしたりできるパーサ、ジェネレーターなどのツールを書きました。 特定の記法で書いたMarkdownから年表的なタイムラインを作成するツール書いた。 $ npx mdline ./timeline.md -o timeline.html 現在はMarkdown to HTMLができる。https://t.co/7Vv0DU... 続きを読む
次世代 Web カンファレンス 2019 アウトラインメモ | Web Scratch
次世代 Web カンファレンス - connpassに参加してきたのでメモ。 パフォーマンス 登壇者 @1000ch likr @sisidovski 記録 ローディング周り 1000ch: WebKitのレンダリングの様子の動画を見たのが興味を持ったきっかけ 1000ch: HTTP/2になってきてローディングの通信を気にすることは減った? sisidovski: 同時接続数は気に... 続きを読む
Babelで書かれたライブラリをTypeScriptへ移行する方法 | Web Scratch
Babelを使ってJavaScriptで書いていたライブラリをTypeScriptへマイグレーションする方法についてのメモ書きです。 数十回はライブラリやアプリケーションのコードベースをJavaScriptからTypeScriptへ変換しているので、 ある程度やり方がパターン化されています。 この記事では、自分がよく利用している次の構成のライ... 続きを読む
JavaScriptの入門書を jsprimer.net で公開しました | Web Scratch
ここ数年書いているJavaScript入門本ですが https://jsprimer.net/ というURLで公開しました。 まだ開発中です これからJavaScriptを始める人がES2015以降をベースにして学べる本 プログラミングをやったことがあるが、今のJavaScriptがよくわからないという人が、今のJavaScriptアプリケーションを読み書きできるように... 続きを読む
JavaScript Promiseの本を書きました | Web Scratch
JavaScript Promiseの本という無料で読める電子書籍を書きました。 タイトルそのままで、JavaScriptのPromiseについて書いた書籍です。 書籍の目的 この書籍を読むことで学べる事として、次の3つを目標にして書きました。 Promiseについて学び、パターンやテストを扱えるようになる事 Promiseの向き不向きについて学び、... 続きを読む
LDRライクなRSSリーダのIrodr 1.0.0をリリースした | Web Scratch
Inoreaderのフロントエンドとして動くRSSリーダのIrodrが十分安定したので1.0.0をリリースしました。 LDRライクなInoreaderクライントのIrodr 1.0.0リリース。https://t.co/oco0VlPbBDhttps://t.co/UTPYfW3FnW pic.twitter.com/GzKLSj9zeo — azu (@azu_re) September 30, 2018 Release Release 1.0.0 · azu/irodr Irodr... 続きを読む
Webpagetestから始める継続的パフォーマンス改善
autoscale: true Webpagetestから始める継続的 パフォーマンス改善 ページロードタイム編 :hourglass: 自己紹介 Name : azu Twitter : @azu_re Website: Web scratch, JSer.info Create: textlint, Almin アジェンダ パフォーマンス改善は指標を決めて行わないと迷子になる パフォーマンス改善を行うには継続的な計測を... 続きを読む
js-primer(JavaScript入門本)がオフラインで読めるようになりました | Web Scratch
現在開発中の js-primer(JavaScript入門本) がServiceWorkerを使ってオフラインでも読めるようになりました。 Service Workers に対応しているブラウザ(IE以外)なら一度開いた後はキャッシュを使ってオフラインでも読めるようになっています。 また、ただのウェブページでもあるので書籍の内容が更新されれば最新の内容に更新されます。 js-primer work... 続きを読む
モバイル/オフラインでも動作するはてなブックマーク検索のPWAを作った | Web Scratch
はてなブックマーク検索PWA というはてなブックマークでブクマしたデータをオフラインでも検索できるPWAを作りました。 サイト: https://hatebupwa.netlify.com/ ソース: https://github.com/azu/hatebupwa はてなブックマークの自分のブクマを検索できるPWAを作りました。 Service Workerに対応してるブラウザ(IOS Safa... 続きを読む
ECMAScriptの仕様/プロポーザルの調べ方を知る | Web Scratch
このステージの詳細については The TC39 Process を参照してください。 2ヶ月に1度行われるTC39のミーティングにおいて、プロポーザルごとにステージを進めるかどうかを議論します。 このミーティングの議事録もGitHub上の tc39/tc39-notes にて公開されています。 ステージ4となったプロポーザルはドラフト版である tc39/ecma262 へマージされます。 そして毎... 続きを読む
ECMAScript 2015以降のJavaScriptの`this`を理解する | Web Scratch
この記事はJavaScriptの入門書として書いている js-primer の this に関する部分をベースにしています。 またjs-primerでは書けなかった現在時点(2018年1月1日)でのブラウザの挙動についてを加えたものです。 次の場所に js-primer 版のか this についての解説があります。 この記事と違って実際にコードを実行しながら読めるので、学習ソースとしては js-p... 続きを読む
ページ上でずっと動いているsetTimeout、setInterval、requestAnimationFrameを見つけてパフォーマンス改善する | Web Scratch
複雑なウェブアプリケーションになってくると、1つのページで複数のTimerなどを回すことがあります。 例えば、Twitterのようなアプリならば、ポーリングで更新するために setInverval のようなタイマーを回します。 また、ゲームなどCanvasで描画を行うアプリケーションならば、メインループを requestAnimationFrame で回します。 このように色々なタイマー系が一つの... 続きを読む
LDRがサービス終了のため、Inoreader/Feedlyをバックエンドに動くRSSリーダを書いている | Web Scratch
2017年8月31日をもってLDRはサービス終了です。乗り換え先となるRSSリーダを探したりしましたが、求めるものを見つけることができなかったので作ることにしました。 【重要】Live Dwango Reader/LDR Pocketサービス終了のお知らせ|LDR / LDRポケット 開発日誌 次の記事でも書いていましたが、RSSリーダのバックエンドを自前で管理するのはコスト的に難しそうでした。そ... 続きを読む
JavaScriptのライブラリを徐々にTypeScriptに移行する | Web Scratch
Almin というライブラリは元々JavaScript(+Babel)で書かれていましたが、今年の2月に src/ 下のソースコードはTypeScriptに移行しました。 その時のコミットログは次のPRに残っているため、コミットログを1コづつ見ていけばどのように行われていったが分かると思います。 Convert src/ to TypeScript by saneyuki · Pull Reque... 続きを読む