Naming conventions

GitHub Repositories

Repository name:

  • projects under the Ondřej Chrastina Github organization don't need any further mention of the product in their name
  • If a Ondřej Chrastina related repository is managed in an external organization, use pattern ondrejchrastina-<project-name> or at least provide ondrejchrastina somewhere in the repository name (i.e. sourcebit-source-ondrejchrastina)

<project-name> guidelines:

  • Use a broad-to-specific convention to keep similar projects grouped together (e.g. delivery-sdk-js + delivery-sdk-net)

Tagging

If you want to, you can mark your repository by specific GitHub topics. This ensures, you get to the topic listing and your repository will be much more accessible.

Feel free to use multiple topics. Use any other appropriate tags for the repo. (e.g. cli, dotnet, plugin, etc.)

Code

Namespaces

We stick to Microsoft's conventions <Company>.(<Product>|<Technology>)[.<Feature>][.<Subnamespace>]. Some examples:

  • <Company>.<Product>.* for projects under the Ondřej Chrastina Github organization
  • <YourCompany>.<Product>.* for any externally maintained Ondřej Chrastina projects
  • <Company>.<Technology>* for non-product related code. Eg. <Company>.AspNetCore.Http if the code is related to Microsoft.AspNetCore.Http.

Packages

  • Package names should omit mentions of the technology stack, assuming it can be derived from the package manager (for example @ondrejchrastina/delivery-sdk-js package hosted on npm should lose the -js suffix)
  • When it makes sense, use organization prefixes (e.g. @ondrejchrastina/deliver-sdk-js)