I'm looking for best practices on how to name exported assets, especially in User Interface Design (e.g. icons) in order to create a unified naming scheme among all assets. I'd like to stick with Camel Case but I'm facing the problem on how to name assets that show the same content but in different size. How do you name these files, what are your/your team's naming conventions?
I typically create namespaces for the "type" of image asset (icon, image, logo, etc), and then provide a suffix for differentiating sizes. That way, the first word denotes the "type" of image asset, so that those get grouped in the list, and the end of the file name gets more descriptive, down to the size variations, if there are any.
For example, if you have some icons, some bitmap images (photos), and some company logos, your list of assets might look like this: (SVG are resolution independent, so only one version is needed)
icon-arrow-down.svg icon-calendar.svg icon-magnifying-glass.svg logo-coca-cola-100.png logo-coca-cola-400.png logo-pepsi-100.png logo-pepsi-400.png photo-professional-workspace-640.jpg photo-professional-workspace-1200.jpg photo-desktop-hardware-640.jpg photo-desktop-hardware-1200.jpg ...
You can also use labels as a suffix, if that's easier (like
-xl) to prevent having the numeric dimension within the filename.
Also, within the world of high-resolution versions of graphics for mobile apps (specifically iOS), the convention is to have a "standard" 1x asset, and to append
@3x for a triple-resolution, etc.) to the high-resolution version of the same asset. So that might look like:
icon-touch-fingerprint.png firstname.lastname@example.org email@example.com ...
Some suggestions: Use camel case for the actual name of the image and underscore to note different attributes or alternate versions of the same image. Start with number so you can control sort order. On a team project the last person who worked on it can add initials and last modified date -- I like to use YYYY_MMDD because it sorts in logical order. It makes for very long filenames but may keep something important from being accidentally overwritten, and leaves a trail of everything that has been done.
Hope some of that will be useful for your situation.