更新紀錄
PrismKit 的每一項變更,於建置時直接從 git 歷史讀取。
- 提交
- 62
- 新增
- 47
- 修正
- 8
- 改進
- 4
從 2026年9月6日 到 2026年11月13日,共 8 個工作天。
2026年11月
11月13日
星期五 · 17 項變更
詳細內容
- qrcode + @types/qrcode: OTP QR now uses qrcode.react like every other QR
- react-syntax-highlighter: WYSIWYG HTML view is a read-only CodePane (as in Markdown to HTML)
- @radix-ui/react-slider: Slider comes from the radix-ui package already installed
- @types/figlet, @types/js-yaml: both libraries ship their own types
詳細內容
- useShared(): useState drop-in whose value can travel in the URL fragment (#s=…)
- Copy link includes values changed from their defaults; fragment never reaches a server
- 829 states across 280 tools; secrets, crypto tools and transient UI state left out
- links are validated (plain values only, type must match the default)
- hardening for link-supplied input: XSLT output built in an inert document,
placeholder SVG colours escaped
詳細內容
- aria-label/title/placeholder/alt strings and template-literal labels go through tr()
- sentences split around
/links/values merged into single trx() strings - plurals/conditionals instead of English words passed as parameters
- extractor: skip tag-holding strings and call-expression junk
- zh-TW for the new strings
11月12日
星期四 · 3 項變更
詳細內容
- i18n runtime (src/i18n): gettext-style tr()/trx()/msg(), per-page inline
catalogs, Intl formatters; English stays in code and is the fallback. - Every language is prefixed (/en, /zh-tw); old unprefixed English URLs
301 to /en via redirects generated in astro.config.mjs. - Per-locale pages, sidebar tree, search index (CJK-aware, English alias),
sitemap hreflang, Fumadocs UI strings and language switcher;
changelog/attributions per locale. - Kit components translate the English literals tools pass them;
pnpm i18nextracts them and keeps catalogs in sync (pnpm check
verifies). docs/TRANSLATING.md for contributors. - zh-TW: site chrome, tool titles/descriptions and all tool categories
except cheatsheets. zh-CN and ja are disabled for now.
- i18n runtime (src/i18n): gettext-style tr()/trx()/msg(), per-page inline
詳細內容
- Rename DevPrism → PrismKit and tool.danielchen.me → prismkit.app across
the site, docs, sample data and SEO fallbacks; new "Prism|Kit" wordmark
in the sidebar and OG images; broader positioning copy (not dev-only). - Theme tokens/classes --dp-* / .dp-* → --pk-* / .pk-*.
- Keep legacy devprism:* storage keys so saved alarms/drafts survive.
- Fix the manifest UUID shortcut (/crypto/uuid → /generator/uuid).
Also from this session:
- Slim themed scrollbars (native + Radix ScrollArea sidebar).
- Toolbar: wrapped fields no longer get pushed down by the bare-control
offset; ColorField accepts className. - MISSING_TOOLS.md gains a PiliApp section (docs/piliapp-tools.tsv).
- Rename DevPrism → PrismKit and tool.danielchen.me → prismkit.app across
11月11日
星期三 · 3 項變更
詳細內容
New categories (Encoding, Units, Data Formats, Design, DevOps) and
tools across JSON, text, web, crypto, network, devops, calculators,
images, Discord and cheatsheets, each with an assert-based self-test.詳細內容
- three-level structure (section > category > subgroup) read from meta.json
- home page: prism hero, section cards, standards proof, directory
- notebook sidebar, shared kit (DataTable, toolbar alignment, ColorField)
詳細內容
- pnpm test runs every *.test.ts; pnpm check also validates page
frontmatter, lucide icons and sidebar listing - scripts/missing-tools.py regenerates docs/MISSING_TOOLS.md from docs/it-tools.tsv
- disable the Astro dev toolbar; new icons and web manifest
- pnpm test runs every *.test.ts; pnpm check also validates page
2026年9月
9月12日
星期六 · 1 項變更
詳細內容
- Implemented TipCalculator for calculating tips and totals based on bill amount and tip percentage.
- Added AmortizationCalculator to compute loan payments, interest, and amortization schedule.
- Created BMICalculator to calculate Body Mass Index based on weight and height inputs.
- Developed GeoDistanceCalculator to compute distances and bearings between geographical coordinates.
- Introduced ResistorCalculator for calculating resistance values based on color bands.
- Built RunningPaceCalculator to determine running pace, time, and distance based on user inputs.
9月11日
星期五 · 3 項變更
- 新增Add comprehensive cheatsheets for Python, Rust, SQL, SSH, Sed/Awk, Systemd, Tmux, TypeScript, and Vime7ba399
詳細內容
- Introduced individual cheatsheet components for each language/tool, providing quick reference for common commands and syntax.
- Implemented a shared Cheatsheet component to handle filtering and copying expressions.
- Each cheatsheet includes categorized sections with relevant examples and descriptions for ease of use.
9月8日
星期二 · 21 項變更
詳細內容
- Refactored MinecraftJarExplorer for better readability and performance.
- Updated ZIP parsing logic and file handling.
- Enhanced file icon rendering based on file extensions.
- Improved the changelog rendering to support multiple typed changes with proper HTML formatting.
- Added utility functions for better code organization and clarity.
- Revamp RegexCheatsheet with improved filtering and copy functionality
- Add Cheatsheets category to tools
- Include Sonner styles for toast notifications
- Create shared CodePane component for code display
詳細內容
- Added example Docker commands for quick access.
- Improved input handling and error messaging for Docker command normalization.
- Refactored output section to use CodePane for better code display.
- Implemented copy and download functionality for generated YAML.
- Updated styles and layout for better user experience.
詳細內容
- Replace bip39 with @scure/bip39 for mnemonic generation and validation
- Update wordlist imports to use @scure/bip39's wordlists
- Refactor ChmodCalculator to simplify permission handling and improve UI layout
- Add support for special permission bits in ChmodCalculator
- Enhance input handling and validation in BIP39 generator
- Introduce passphrase functionality in BIP39 generator
- Improve overall user experience with better feedback and UI elements
- 新增Inline stylesheets in build configuration to prevent CSS unload flash during React component swapsb78f835
- 新增Update Placeholder Generator tool with enhanced functionality, customizable patterns, and improved UIb0c8bfe
- 新增Add SVG Placeholder Generator tool with customizable dimensions, colors, and download optionsf43b8ff
9月7日
星期一 · 9 項變更
- 改進And enhance various tools with updated descriptions, improved UI components, and new featuresdc08639
詳細內容
- Updated descriptions for Lorem Ipsum Generator, Numeronym Generator, Text Diff, Text Statistics, Basic Auth Generator, Device Info, Email Normalizer, HTML Entities Escaper, HTML WYSIWYG Editor, HTTP Status Codes, Keycode Info, MIME Types, OG Meta Generator, Outlook Safelink Decoder, Slugify String, URL Encoder/Decoder, URL Parser, URL Redirect Checker, User-Agent Parser, XML Formatter, XML Linter, XML to JSON, XPath Tester, XSLT Tester, YAML Merger, YAML Prettify, YAML to JSON, and YAML to TOML.
- Refactored JSONMinify and JSONPrettify components to improve state management and UI layout.
- Enhanced JSONToCSV component with better error handling and output formatting.
- Introduced OutputBox component for consistent output display and added download functionality.
- Added JSON category in tools with a new meta.json file for better organization.
- 新增Add JSON tools including Diff, Minify, Prettify, and CSV conversion; update descriptions and icons1e71c99
詳細內容
- Introduced XML tools including XML Linter, XML to HTML, XML to JSON, XPath Tester, and XSLT Tester for parsing and transforming XML data.
- Added YAML tools for flattening, merging, converting to JSON, and converting to TOML.
- Implemented a Code Scanner for reading barcodes and QR codes with camera and file upload support.
- Created shared components for output display and QR code generation with download functionality.
- Updated tool categories to include XML, YAML, and barcode functionalities.
- 新增Clean up meta.json files by removing unused pages for various tools; enhance Docs component with active link highlighting1fac21c
- 新增Add new tools including String Obfuscator, ASCII Art Text Generator, and Text Diff; update meta files and dependencies1f26490
詳細內容
- Introduced a new tool: Numeronym Generator, allowing users to convert words into numeronyms.
- Updated the tools overview on the index page to display available tools.
- Created a new attributions page to list open-source packages used in the project, including runtime and dev dependencies.
- Added a changelog page to display commit history, formatted for better readability.
- Implemented a new library for managing attributions and changelog data.
- Enhanced global styles to improve user experience.
詳細內容
- Refactor URLEncoder component to support both component and full URI encoding modes, with improved UI and output handling.
- Update URLParser component to provide better URL parsing functionality, including example URLs and improved error handling.
- Revamp URLRedirectChecker component for a more user-friendly interface, including enhanced status display and redirect chain visualization.
9月6日
星期日 · 5 項變更
詳細內容
- Removed detailed descriptions and features from SVG Placeholder Generator, WiFi QR Code Generator, IPv4 Address Converter, IPv4 Range Expander, IPv4 Subnet Calculator, IPv6 ULA Generator, MAC Address Generator, MAC Address Lookup, Emoji Picker, Lorem Ipsum Generator, Text Statistics, Basic Auth Generator, Device Info, Email Normalizer, HTML WYSIWYG Editor, HTTP Status Codes, JSON Diff, Keycode Info, MIME Types, Open Graph Meta Generator, Outlook SafeLink Decoder, Slugify String, User-Agent Parser.
- Updated package.json and pnpm-lock.yaml to include @openpanel/astro and related dependencies.
- Integrated OpenPanel component into Layout.astro for enhanced tracking capabilities.
- Adjusted OG image generation to streamline text output.
詳細內容
A collection of ~55 client-side developer and productivity tools built
on Astro + Fumadocs, with React islands, Tailwind v4, and shadcn/ui.