Giving my two cents: I'm searching for the past 6 years of a good naming convention, especially because I'm writing code depending on my daily constitution so I'm the one person that has to be guided most (by my own, sounds a little bit schizo). I code mostly in C# standard notation because I really dislike writing all in lower case with underscores as for example the C++ STL does. No prefixes, no underscroe, just meaningful naming.
There is a file on my GitHub I wrote some time ago.
For the project structure, this is getting more difficult and changes from time to time while refactoring. First of all I like to categorize everything and because of the modular way I develop my projects, there are always directories that contain atomic proposals. For example Math or Input while "generic" code is going into a Common module project. Everything however also has a Common folder because I don't like Misc or Utils/ Utility; this can be everything and nothing so I thought Common fits all these most. Every other directory in a project is named by a short, 99% of the time single worded and meaningful noun. This can be Math, Text or System for example but the remaining 1% can for example be ObjectModel. Naming code files is simple either done by their proposal, so Clang or Keywords or determined by their contained (main) class TreeBuilder, InputStream or CommandLineParser.
However there are some special exceptions to this rule: C# partial classes are named like their master file with the categorization of the kind of partial extension, separated by a dot while C++ header files that are supposed to be included by another header file in order to extend those are named with an additional .Partial before the extension and after the master file name. Same for RTTI extensions (generated by our C++ reflection tool) that are extended with .TypeInfo.
Our build tool Forge also relies on certain files being named properly. Any directory that contains a .Build.cs file is treated as plugin for Forge and so compiled and/or reloaded on startup while .Build.dva files define a PU used in the tools pipeline. Anything else .Whatever.dva is treated as Whatever-Module (Rendering or ECS for example) and compiled into code that special data driven pipeline host needs (the render pipeline for example is assembled from all .Render.dva definition files while .ECS.dva generates C++ System code)