In my experience too many developers make things public too often and when looking to refactor a module the first thing I want to know is how big its surface area is , if everything is public this can be a challenge. using search and replace to change public to internal and then seeing what breaks is an unsubtle and time consuming way of gather in this data.
What I want: To write a refactor which can find and suggest public classes and methods which could be made "safely" made internal.
Because they are not referenced by classes out-side the assembly, and are not involved in implementing an interface.
I'm an ok cook-book programmer and I've tried using hararis clean code project ( https://github.com/hhariri/CleanCode ) as a template for implementing this myself.
I've found the SDK https://www.jetbrains.com/help/resharper/sdk/Intro/ReSharperPlatform.html
But I find the resharper nuget module somewhat "undiscoverable".
Anyone recommend an existing project as a better starting point - or some good beginners documentation for the resharper API ?