About this tool
Audit a list of icon file names against kebab, snake, camel or Pascal case, catch duplicates and reserved names, and get corrected names.
The Icon Naming Consistency Checker audits a list of icon file names against a single convention - kebab-case, snake_case, camelCase or PascalCase - and returns the corrected name for each one. It tokenises each name at separator, camel-hump and acronym boundaries, then re-joins it in the target style, and separately flags names that collide after renaming, differ only by letter case, exceed the 255 character path-component limit, contain characters Windows or POSIX forbid, or match a reserved MS-DOS device name. The output includes a ready-to-run list of git mv commands.
Open Icon Naming Consistency Checker on AltFTool — it loads instantly in your browser.
Paste your list into 'Icon file names (one per line)'; the sample loads ArrowLeft.svg, arrow-right.svg, arrow_up.svg, chevronDown-24.svg, Chevron-Down-24.svg, user profile.svg and con.svg.
Choose the Naming convention — kebab-case, snake_case, camelCase or PascalCase — set 'Required extension (blank to allow any)' and 'Required prefix (blank for none)', list the allowed final tokens such as 16, 24, 32, and tick 'Treat a digit run as its own word' if arrowLeft24 should become arrow-left-24.
Read the conforming percentage and the Current name / Suggested / Problems table, check the collision, case-clash and reserved-device-name warnings, then press 'Copy rename plan' to take the git mv commands.
Splits at separators, camel humps and acronym boundaries, so APIKey becomes api-key rather than apikey.
Checks the Windows reserved device names, forbidden punctuation and the 255 character component limit.
Warns when two source names normalise to one target, before a bulk rename destroys a file.
kebab-case is the most common for files served over HTTP, because URLs are case-sensitive and hyphens survive every file system and CDN. PascalCase is normal when each icon is also a component name. What matters most is picking one and applying it to the whole set.
Default macOS (APFS case-insensitive) and Windows volumes treat Icon.svg and icon.svg as the same file, while Linux and git do not. The result is a repository where one file silently replaces the other on checkout, which is why this tool flags case-only differences as an error.
Windows forbids the nine characters < > : " / \ | ? * plus every control character below U+0020, and POSIX forbids the forward slash and the null byte. Whitespace is technically legal everywhere but breaks unquoted shell commands and URLs, so it is flagged too.
255 characters per path component on ext4, APFS and NTFS. That is a per-component limit, not a whole-path limit; Windows additionally caps the full path at 260 characters unless long paths are enabled.