From c87826c3d358538b58ffe1befd33bfb8ba4dc3bc Mon Sep 17 00:00:00 2001 From: Amon Sawamura Date: Sat, 31 Jan 2026 16:35:07 +0900 Subject: [PATCH 01/11] Install oxfmt Co-Authored-By: Claude Sonnet 4.5 --- .gitignore | 1 + package.json | 16 ++++++++ pnpm-lock.yaml | 109 +++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 126 insertions(+) create mode 100644 .gitignore create mode 100644 package.json create mode 100644 pnpm-lock.yaml diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..c2658d7 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +node_modules/ diff --git a/package.json b/package.json new file mode 100644 index 0000000..fb087ea --- /dev/null +++ b/package.json @@ -0,0 +1,16 @@ +{ + "name": "configs", + "version": "1.0.0", + "description": "", + "main": "index.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "keywords": [], + "author": "", + "license": "ISC", + "packageManager": "pnpm@10.28.2", + "devDependencies": { + "oxfmt": "^0.27.0" + } +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml new file mode 100644 index 0000000..c23265f --- /dev/null +++ b/pnpm-lock.yaml @@ -0,0 +1,109 @@ +lockfileVersion: '9.0' + +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + +importers: + + .: + devDependencies: + oxfmt: + specifier: ^0.27.0 + version: 0.27.0 + +packages: + + '@oxfmt/darwin-arm64@0.27.0': + resolution: {integrity: sha512-3vwqyzNlVTVFVzHMlrqxb4tgVgHp6FYS0uIxsIZ/SeEDG0azaqiOw/2t8LlJ9f72PKRLWSey+Ak99tiKgpbsnQ==} + cpu: [arm64] + os: [darwin] + + '@oxfmt/darwin-x64@0.27.0': + resolution: {integrity: sha512-5u8mZVLm70v6l1wLZ2MmeNIEzGsruwKw5F7duePzpakPfxGtLpiFNUwe4aBUJULTP6aMzH+A4dA0JOn8lb7Luw==} + cpu: [x64] + os: [darwin] + + '@oxfmt/linux-arm64-gnu@0.27.0': + resolution: {integrity: sha512-aql/LLYriX/5Ar7o5Qivnp/qMTUPNiOCr7cFLvmvzYZa3XL0H8XtbKUfIVm+9ILR0urXQzcml+L8pLe1p8sgEg==} + cpu: [arm64] + os: [linux] + libc: [glibc] + + '@oxfmt/linux-arm64-musl@0.27.0': + resolution: {integrity: sha512-6u/kNb7hubthg4u/pn3MK/GJLwPgjDvDDnjjr7TC0/OK/xztef8ToXmycxIQ9OeDNIJJf7Z0Ss/rHnKvQOWzRw==} + cpu: [arm64] + os: [linux] + libc: [musl] + + '@oxfmt/linux-x64-gnu@0.27.0': + resolution: {integrity: sha512-EhvDfFHO1yrK/Cu75eU1U828lBsW2cV0JITOrka5AjR3PlmnQQ03Mr9ROkWkbPmzAMklXI4Q16eO+4n+7FhS1w==} + cpu: [x64] + os: [linux] + libc: [glibc] + + '@oxfmt/linux-x64-musl@0.27.0': + resolution: {integrity: sha512-1pgjuwMT5sCekuteYZ7LkDsto7DJouaccwjozHqdWohSj2zJpFeSP2rMaC+6JJ1KD5r9HG9sWRuHZGEaoX9uOw==} + cpu: [x64] + os: [linux] + libc: [musl] + + '@oxfmt/win32-arm64@0.27.0': + resolution: {integrity: sha512-mmuEhXZEhAYAeyjVTWwGKIA3RSb2b/He9wrXkDJPhmqp8qISUzkVg1dQmLEt4hD+wI5rzR+6vchPt521tzuRDA==} + cpu: [arm64] + os: [win32] + + '@oxfmt/win32-x64@0.27.0': + resolution: {integrity: sha512-cXKVkL1DuRq31QjwHqtBEUztyBmM9YZKdeFhsDLBURNdk1CFW42uWsmTsaqrXSoiCj7nCjfP0pwTOzxhQZra/A==} + cpu: [x64] + os: [win32] + + oxfmt@0.27.0: + resolution: {integrity: sha512-FHR0HR3WeMKBuVEQvW3EeiRZXs/cQzNHxGbhCoAIEPr1FVcOa9GCqrKJXPqv2jkzmCg6Wqot+DvN9RzemyFJhw==} + engines: {node: ^20.19.0 || >=22.12.0} + hasBin: true + + tinypool@2.0.0: + resolution: {integrity: sha512-/RX9RzeH2xU5ADE7n2Ykvmi9ED3FBGPAjw9u3zucrNNaEBIO0HPSYgL0NT7+3p147ojeSdaVu08F6hjpv31HJg==} + engines: {node: ^20.0.0 || >=22.0.0} + +snapshots: + + '@oxfmt/darwin-arm64@0.27.0': + optional: true + + '@oxfmt/darwin-x64@0.27.0': + optional: true + + '@oxfmt/linux-arm64-gnu@0.27.0': + optional: true + + '@oxfmt/linux-arm64-musl@0.27.0': + optional: true + + '@oxfmt/linux-x64-gnu@0.27.0': + optional: true + + '@oxfmt/linux-x64-musl@0.27.0': + optional: true + + '@oxfmt/win32-arm64@0.27.0': + optional: true + + '@oxfmt/win32-x64@0.27.0': + optional: true + + oxfmt@0.27.0: + dependencies: + tinypool: 2.0.0 + optionalDependencies: + '@oxfmt/darwin-arm64': 0.27.0 + '@oxfmt/darwin-x64': 0.27.0 + '@oxfmt/linux-arm64-gnu': 0.27.0 + '@oxfmt/linux-arm64-musl': 0.27.0 + '@oxfmt/linux-x64-gnu': 0.27.0 + '@oxfmt/linux-x64-musl': 0.27.0 + '@oxfmt/win32-arm64': 0.27.0 + '@oxfmt/win32-x64': 0.27.0 + + tinypool@2.0.0: {} From d61cf44a6bc22e5ede4a905bc43aaba36364a20b Mon Sep 17 00:00:00 2001 From: Amon Sawamura Date: Sat, 31 Jan 2026 16:35:21 +0900 Subject: [PATCH 02/11] Add format scripts to package.json Co-Authored-By: Claude Sonnet 4.5 --- package.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index fb087ea..8b12470 100644 --- a/package.json +++ b/package.json @@ -4,7 +4,8 @@ "description": "", "main": "index.js", "scripts": { - "test": "echo \"Error: no test specified\" && exit 1" + "format": "oxfmt", + "format:check": "oxfmt --check" }, "keywords": [], "author": "", From 83b9fae52ab416bd5d9eaaa65e7dea2622e99f53 Mon Sep 17 00:00:00 2001 From: Amon Sawamura Date: Sat, 31 Jan 2026 16:35:29 +0900 Subject: [PATCH 03/11] Add oxfmt configuration Co-Authored-By: Claude Sonnet 4.5 --- .oxfmtrc.json | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 .oxfmtrc.json diff --git a/.oxfmtrc.json b/.oxfmtrc.json new file mode 100644 index 0000000..dff8992 --- /dev/null +++ b/.oxfmtrc.json @@ -0,0 +1,4 @@ +{ + "$schema": "./node_modules/oxfmt/configuration_schema.json", + "experimentalSortImports": {} +} From 91440f3237ab0a09537a072e817b66afa0061010 Mon Sep 17 00:00:00 2001 From: Amon Sawamura Date: Sat, 31 Jan 2026 16:35:51 +0900 Subject: [PATCH 04/11] Run oxfmt format Co-Authored-By: Claude Sonnet 4.5 --- package.json | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 8b12470..cba9015 100644 --- a/package.json +++ b/package.json @@ -2,16 +2,16 @@ "name": "configs", "version": "1.0.0", "description": "", + "keywords": [], + "license": "ISC", + "author": "", "main": "index.js", "scripts": { "format": "oxfmt", "format:check": "oxfmt --check" }, - "keywords": [], - "author": "", - "license": "ISC", - "packageManager": "pnpm@10.28.2", "devDependencies": { "oxfmt": "^0.27.0" - } + }, + "packageManager": "pnpm@10.28.2" } From e1ca4c9c6c3ca499f2c78e4c72b64f7d346886d0 Mon Sep 17 00:00:00 2001 From: Amon Sawamura Date: Sat, 31 Jan 2026 16:36:11 +0900 Subject: [PATCH 05/11] Add format check workflow Co-Authored-By: Claude Sonnet 4.5 --- .github/workflows/format-check.yml | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 .github/workflows/format-check.yml diff --git a/.github/workflows/format-check.yml b/.github/workflows/format-check.yml new file mode 100644 index 0000000..68da6d3 --- /dev/null +++ b/.github/workflows/format-check.yml @@ -0,0 +1,20 @@ +name: Format Check + +on: + pull_request: + push: + branches: + - main + +jobs: + format: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v6 + - uses: pnpm/action-setup@v4 + - uses: actions/setup-node@v6 + with: + node-version: 24 + cache: pnpm + - run: pnpm install --frozen-lockfile + - run: pnpm run format:check From 06d9e61bcd859c51df92b634e6330221ea2124ca Mon Sep 17 00:00:00 2001 From: Amon Sawamura Date: Sat, 31 Jan 2026 16:38:12 +0900 Subject: [PATCH 06/11] Install husky and lint-staged Co-Authored-By: Claude Sonnet 4.5 --- package.json | 2 + pnpm-lock.yaml | 282 +++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 284 insertions(+) diff --git a/package.json b/package.json index cba9015..4003fc9 100644 --- a/package.json +++ b/package.json @@ -11,6 +11,8 @@ "format:check": "oxfmt --check" }, "devDependencies": { + "husky": "^9.1.7", + "lint-staged": "^16.2.7", "oxfmt": "^0.27.0" }, "packageManager": "pnpm@10.28.2" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index c23265f..cb60993 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -8,6 +8,12 @@ importers: .: devDependencies: + husky: + specifier: ^9.1.7 + version: 9.1.7 + lint-staged: + specifier: ^16.2.7 + version: 16.2.7 oxfmt: specifier: ^0.27.0 version: 0.27.0 @@ -58,15 +64,159 @@ packages: cpu: [x64] os: [win32] + ansi-escapes@7.2.0: + resolution: {integrity: sha512-g6LhBsl+GBPRWGWsBtutpzBYuIIdBkLEvad5C/va/74Db018+5TZiyA26cZJAr3Rft5lprVqOIPxf5Vid6tqAw==} + engines: {node: '>=18'} + + ansi-regex@6.2.2: + resolution: {integrity: sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==} + engines: {node: '>=12'} + + ansi-styles@6.2.3: + resolution: {integrity: sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==} + engines: {node: '>=12'} + + braces@3.0.3: + resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} + engines: {node: '>=8'} + + cli-cursor@5.0.0: + resolution: {integrity: sha512-aCj4O5wKyszjMmDT4tZj93kxyydN/K5zPWSCe6/0AV/AA1pqe5ZBIw0a2ZfPQV7lL5/yb5HsUreJ6UFAF1tEQw==} + engines: {node: '>=18'} + + cli-truncate@5.1.1: + resolution: {integrity: sha512-SroPvNHxUnk+vIW/dOSfNqdy1sPEFkrTk6TUtqLCnBlo3N7TNYYkzzN7uSD6+jVjrdO4+p8nH7JzH6cIvUem6A==} + engines: {node: '>=20'} + + colorette@2.0.20: + resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==} + + commander@14.0.3: + resolution: {integrity: sha512-H+y0Jo/T1RZ9qPP4Eh1pkcQcLRglraJaSLoyOtHxu6AapkjWVCy2Sit1QQ4x3Dng8qDlSsZEet7g5Pq06MvTgw==} + engines: {node: '>=20'} + + emoji-regex@10.6.0: + resolution: {integrity: sha512-toUI84YS5YmxW219erniWD0CIVOo46xGKColeNQRgOzDorgBi1v4D71/OFzgD9GO2UGKIv1C3Sp8DAn0+j5w7A==} + + environment@1.1.0: + resolution: {integrity: sha512-xUtoPkMggbz0MPyPiIWr1Kp4aeWJjDZ6SMvURhimjdZgsRuDplF5/s9hcgGhyXMhs+6vpnuoiZ2kFiu3FMnS8Q==} + engines: {node: '>=18'} + + eventemitter3@5.0.4: + resolution: {integrity: sha512-mlsTRyGaPBjPedk6Bvw+aqbsXDtoAyAzm5MO7JgU+yVRyMQ5O8bD4Kcci7BS85f93veegeCPkL8R4GLClnjLFw==} + + fill-range@7.1.1: + resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} + engines: {node: '>=8'} + + get-east-asian-width@1.4.0: + resolution: {integrity: sha512-QZjmEOC+IT1uk6Rx0sX22V6uHWVwbdbxf1faPqJ1QhLdGgsRGCZoyaQBm/piRdJy/D2um6hM1UP7ZEeQ4EkP+Q==} + engines: {node: '>=18'} + + husky@9.1.7: + resolution: {integrity: sha512-5gs5ytaNjBrh5Ow3zrvdUUY+0VxIuWVL4i9irt6friV+BqdCfmV11CQTWMiBYWHbXhco+J1kHfTOUkePhCDvMA==} + engines: {node: '>=18'} + hasBin: true + + is-fullwidth-code-point@5.1.0: + resolution: {integrity: sha512-5XHYaSyiqADb4RnZ1Bdad6cPp8Toise4TzEjcOYDHZkTCbKgiUl7WTUCpNWHuxmDt91wnsZBc9xinNzopv3JMQ==} + engines: {node: '>=18'} + + is-number@7.0.0: + resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} + engines: {node: '>=0.12.0'} + + lint-staged@16.2.7: + resolution: {integrity: sha512-lDIj4RnYmK7/kXMya+qJsmkRFkGolciXjrsZ6PC25GdTfWOAWetR0ZbsNXRAj1EHHImRSalc+whZFg56F5DVow==} + engines: {node: '>=20.17'} + hasBin: true + + listr2@9.0.5: + resolution: {integrity: sha512-ME4Fb83LgEgwNw96RKNvKV4VTLuXfoKudAmm2lP8Kk87KaMK0/Xrx/aAkMWmT8mDb+3MlFDspfbCs7adjRxA2g==} + engines: {node: '>=20.0.0'} + + log-update@6.1.0: + resolution: {integrity: sha512-9ie8ItPR6tjY5uYJh8K/Zrv/RMZ5VOlOWvtZdEHYSTFKZfIBPQa9tOAEeAWhd+AnIneLJ22w5fjOYtoutpWq5w==} + engines: {node: '>=18'} + + micromatch@4.0.8: + resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} + engines: {node: '>=8.6'} + + mimic-function@5.0.1: + resolution: {integrity: sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA==} + engines: {node: '>=18'} + + nano-spawn@2.0.0: + resolution: {integrity: sha512-tacvGzUY5o2D8CBh2rrwxyNojUsZNU2zjNTzKQrkgGJQTbGAfArVWXSKMBokBeeg6C7OLRGUEyoFlYbfeWQIqw==} + engines: {node: '>=20.17'} + + onetime@7.0.0: + resolution: {integrity: sha512-VXJjc87FScF88uafS3JllDgvAm+c/Slfz06lorj2uAY34rlUu0Nt+v8wreiImcrgAjjIHp1rXpTDlLOGw29WwQ==} + engines: {node: '>=18'} + oxfmt@0.27.0: resolution: {integrity: sha512-FHR0HR3WeMKBuVEQvW3EeiRZXs/cQzNHxGbhCoAIEPr1FVcOa9GCqrKJXPqv2jkzmCg6Wqot+DvN9RzemyFJhw==} engines: {node: ^20.19.0 || >=22.12.0} hasBin: true + picomatch@2.3.1: + resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} + engines: {node: '>=8.6'} + + pidtree@0.6.0: + resolution: {integrity: sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==} + engines: {node: '>=0.10'} + hasBin: true + + restore-cursor@5.1.0: + resolution: {integrity: sha512-oMA2dcrw6u0YfxJQXm342bFKX/E4sG9rbTzO9ptUcR/e8A33cHuvStiYOwH7fszkZlZ1z/ta9AAoPk2F4qIOHA==} + engines: {node: '>=18'} + + rfdc@1.4.1: + resolution: {integrity: sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==} + + signal-exit@4.1.0: + resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} + engines: {node: '>=14'} + + slice-ansi@7.1.2: + resolution: {integrity: sha512-iOBWFgUX7caIZiuutICxVgX1SdxwAVFFKwt1EvMYYec/NWO5meOJ6K5uQxhrYBdQJne4KxiqZc+KptFOWFSI9w==} + engines: {node: '>=18'} + + string-argv@0.3.2: + resolution: {integrity: sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==} + engines: {node: '>=0.6.19'} + + string-width@7.2.0: + resolution: {integrity: sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==} + engines: {node: '>=18'} + + string-width@8.1.1: + resolution: {integrity: sha512-KpqHIdDL9KwYk22wEOg/VIqYbrnLeSApsKT/bSj6Ez7pn3CftUiLAv2Lccpq1ALcpLV9UX1Ppn92npZWu2w/aw==} + engines: {node: '>=20'} + + strip-ansi@7.1.2: + resolution: {integrity: sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA==} + engines: {node: '>=12'} + tinypool@2.0.0: resolution: {integrity: sha512-/RX9RzeH2xU5ADE7n2Ykvmi9ED3FBGPAjw9u3zucrNNaEBIO0HPSYgL0NT7+3p147ojeSdaVu08F6hjpv31HJg==} engines: {node: ^20.0.0 || >=22.0.0} + to-regex-range@5.0.1: + resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} + engines: {node: '>=8.0'} + + wrap-ansi@9.0.2: + resolution: {integrity: sha512-42AtmgqjV+X1VpdOfyTGOYRi0/zsoLqtXQckTmqTeybT+BDIbM/Guxo7x3pE2vtpr1ok6xRqM9OpBe+Jyoqyww==} + engines: {node: '>=18'} + + yaml@2.8.2: + resolution: {integrity: sha512-mplynKqc1C2hTVYxd0PU2xQAc22TI1vShAYGksCCfxbn/dFwnHTNi1bvYsBTkhdUNtGIf5xNOg938rrSSYvS9A==} + engines: {node: '>= 14.6'} + hasBin: true + snapshots: '@oxfmt/darwin-arm64@0.27.0': @@ -93,6 +243,91 @@ snapshots: '@oxfmt/win32-x64@0.27.0': optional: true + ansi-escapes@7.2.0: + dependencies: + environment: 1.1.0 + + ansi-regex@6.2.2: {} + + ansi-styles@6.2.3: {} + + braces@3.0.3: + dependencies: + fill-range: 7.1.1 + + cli-cursor@5.0.0: + dependencies: + restore-cursor: 5.1.0 + + cli-truncate@5.1.1: + dependencies: + slice-ansi: 7.1.2 + string-width: 8.1.1 + + colorette@2.0.20: {} + + commander@14.0.3: {} + + emoji-regex@10.6.0: {} + + environment@1.1.0: {} + + eventemitter3@5.0.4: {} + + fill-range@7.1.1: + dependencies: + to-regex-range: 5.0.1 + + get-east-asian-width@1.4.0: {} + + husky@9.1.7: {} + + is-fullwidth-code-point@5.1.0: + dependencies: + get-east-asian-width: 1.4.0 + + is-number@7.0.0: {} + + lint-staged@16.2.7: + dependencies: + commander: 14.0.3 + listr2: 9.0.5 + micromatch: 4.0.8 + nano-spawn: 2.0.0 + pidtree: 0.6.0 + string-argv: 0.3.2 + yaml: 2.8.2 + + listr2@9.0.5: + dependencies: + cli-truncate: 5.1.1 + colorette: 2.0.20 + eventemitter3: 5.0.4 + log-update: 6.1.0 + rfdc: 1.4.1 + wrap-ansi: 9.0.2 + + log-update@6.1.0: + dependencies: + ansi-escapes: 7.2.0 + cli-cursor: 5.0.0 + slice-ansi: 7.1.2 + strip-ansi: 7.1.2 + wrap-ansi: 9.0.2 + + micromatch@4.0.8: + dependencies: + braces: 3.0.3 + picomatch: 2.3.1 + + mimic-function@5.0.1: {} + + nano-spawn@2.0.0: {} + + onetime@7.0.0: + dependencies: + mimic-function: 5.0.1 + oxfmt@0.27.0: dependencies: tinypool: 2.0.0 @@ -106,4 +341,51 @@ snapshots: '@oxfmt/win32-arm64': 0.27.0 '@oxfmt/win32-x64': 0.27.0 + picomatch@2.3.1: {} + + pidtree@0.6.0: {} + + restore-cursor@5.1.0: + dependencies: + onetime: 7.0.0 + signal-exit: 4.1.0 + + rfdc@1.4.1: {} + + signal-exit@4.1.0: {} + + slice-ansi@7.1.2: + dependencies: + ansi-styles: 6.2.3 + is-fullwidth-code-point: 5.1.0 + + string-argv@0.3.2: {} + + string-width@7.2.0: + dependencies: + emoji-regex: 10.6.0 + get-east-asian-width: 1.4.0 + strip-ansi: 7.1.2 + + string-width@8.1.1: + dependencies: + get-east-asian-width: 1.4.0 + strip-ansi: 7.1.2 + + strip-ansi@7.1.2: + dependencies: + ansi-regex: 6.2.2 + tinypool@2.0.0: {} + + to-regex-range@5.0.1: + dependencies: + is-number: 7.0.0 + + wrap-ansi@9.0.2: + dependencies: + ansi-styles: 6.2.3 + string-width: 7.2.0 + strip-ansi: 7.1.2 + + yaml@2.8.2: {} From bb365ae3a87901bb42467a01da98acd30b7c4c6f Mon Sep 17 00:00:00 2001 From: Amon Sawamura Date: Sat, 31 Jan 2026 16:38:20 +0900 Subject: [PATCH 07/11] Add lint-staged configuration Co-Authored-By: Claude Sonnet 4.5 --- .lintstagedrc | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 .lintstagedrc diff --git a/.lintstagedrc b/.lintstagedrc new file mode 100644 index 0000000..256c146 --- /dev/null +++ b/.lintstagedrc @@ -0,0 +1,3 @@ +{ + "*": "oxfmt --no-error-on-unmatched-pattern" +} From 4e8eb8164f277357e8f91e4ae9809e28008e1c12 Mon Sep 17 00:00:00 2001 From: Amon Sawamura Date: Sat, 31 Jan 2026 16:51:35 +0900 Subject: [PATCH 08/11] Setup husky with lint-staged Co-Authored-By: Claude Sonnet 4.5 --- .husky/pre-commit | 1 + package.json | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) create mode 100644 .husky/pre-commit diff --git a/.husky/pre-commit b/.husky/pre-commit new file mode 100644 index 0000000..c27d889 --- /dev/null +++ b/.husky/pre-commit @@ -0,0 +1 @@ +lint-staged diff --git a/package.json b/package.json index 4003fc9..d7fa0e1 100644 --- a/package.json +++ b/package.json @@ -8,7 +8,8 @@ "main": "index.js", "scripts": { "format": "oxfmt", - "format:check": "oxfmt --check" + "format:check": "oxfmt --check", + "prepare": "husky" }, "devDependencies": { "husky": "^9.1.7", From 084d537ae702bc50f93a5b2bb64f53fbb4230f8c Mon Sep 17 00:00:00 2001 From: Amon Sawamura Date: Sat, 31 Jan 2026 16:51:54 +0900 Subject: [PATCH 09/11] update package.json --- package.json | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/package.json b/package.json index d7fa0e1..54c8896 100644 --- a/package.json +++ b/package.json @@ -1,11 +1,7 @@ { "name": "configs", - "version": "1.0.0", - "description": "", - "keywords": [], - "license": "ISC", - "author": "", - "main": "index.js", + "version": "0.0.0", + "license": "UNLICENSED", "scripts": { "format": "oxfmt", "format:check": "oxfmt --check", From 4d5af3ee6a6fc84c70feed80075aa15621206cdc Mon Sep 17 00:00:00 2001 From: Amon Sawamura Date: Sat, 31 Jan 2026 16:52:50 +0900 Subject: [PATCH 10/11] add .vscode --- .vscode/extensions.json | 3 +++ .vscode/settings.json | 4 ++++ 2 files changed, 7 insertions(+) create mode 100644 .vscode/extensions.json create mode 100644 .vscode/settings.json diff --git a/.vscode/extensions.json b/.vscode/extensions.json new file mode 100644 index 0000000..99e2f7d --- /dev/null +++ b/.vscode/extensions.json @@ -0,0 +1,3 @@ +{ + "recommendations": ["oxc.oxc-vscode"] +} diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..8dfb9da --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,4 @@ +{ + "editor.defaultFormatter": "oxc.oxc-vscode", + "editor.formatOnSave": true +} From b1ffa81c9b661bdd8617af33c12c738bd87cad06 Mon Sep 17 00:00:00 2001 From: Amon Sawamura Date: Sat, 31 Jan 2026 16:56:21 +0900 Subject: [PATCH 11/11] use ubuntu-slim --- .github/workflows/format-check.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/format-check.yml b/.github/workflows/format-check.yml index 68da6d3..18482ae 100644 --- a/.github/workflows/format-check.yml +++ b/.github/workflows/format-check.yml @@ -8,7 +8,7 @@ on: jobs: format: - runs-on: ubuntu-latest + runs-on: ubuntu-slim steps: - uses: actions/checkout@v6 - uses: pnpm/action-setup@v4