ข้ามไปเนื้อหาหลัก

#tooling 11

รายการ Projects, Resources และ Notes ทั้งหมดที่มี tag นี้

Projects 4

active

Astro Component Playground

Interactive sandbox สำหรับทดสอบ Astro components แบบ real-time — เขียน component code แล้วเห็น preview ทันที

อ่านเพิ่ม →

completed

type-safe-env

TypeScript utility สำหรับ parse และ validate environment variables ด้วย Zod — crash ทันทีถ้า env ขาดหาย แทนที่จะ fail แบบ silent

อ่านเพิ่ม →

completed

Shareable ESLint Config

ESLint configuration package ที่แชร์ได้ across TypeScript projects — รวม rules สำหรับ Node.js, Astro, และ vanilla TS ในชุดเดียว

อ่านเพิ่ม →

completed

Image Optimizer CLI

Node.js CLI สำหรับ bulk compress รูปภาพ — แปลงเป็น WebP/AVIF, resize, และ strip metadata อัตโนมัติก่อน deploy

อ่านเพิ่ม →

Resources 5

reference

ESLint + Prettier Configuration — TypeScript Project Setup

ตั้งค่า ESLint + Prettier ที่ทำงานร่วมกันได้สำหรับ TypeScript project: rules, integrations, pre-commit hooks

อ่านเพิ่ม →

guide

GitHub Actions Advanced — Matrix, Cache, Reusable Workflows

GitHub Actions ขั้นสูง: matrix builds, dependency caching, reusable workflows, environment secrets, และ workflow triggers

อ่านเพิ่ม →

reference

npm Workspaces & Monorepo Basics

จัดการ multiple packages ใน repo เดียวด้วย npm workspaces — shared dependencies, cross-package scripts, และ monorepo patterns

อ่านเพิ่ม →

reference

package.json Modern Fields — exports, type, engines

Fields สำคัญใน package.json สำหรับ modern npm packages: exports map, type: module, engines, files, และ npm publish workflow

อ่านเพิ่ม →

reference

TypeScript Module Augmentation & Declaration Merging

เพิ่ม types ให้ third-party modules, extend interface ที่มีอยู่, และสร้าง .d.ts files สำหรับ JavaScript libraries

อ่านเพิ่ม →

Notes 2

note

sharp รองรับ SVG input ได้โดยตรงผ่าน librsvg

ไม่ต้องติดตั้ง Inkscape หรือ ImageMagick — sharp แปลง SVG เป็น PNG ได้ทันที

อ่านเพิ่ม →

note

.vscode/settings.json ตั้ง config แยกต่อ project

settings บาง project-specific ควรอยู่ใน .vscode/settings.json ไม่ใช่ global — commit ไว้ใน repo ได้เลย

อ่านเพิ่ม →