Contribution guidelines and standards
October 20, 2023 · View on GitHub
The following are instructions for setting up an environment for CSLA .NET development.
Getting started
- Review the contributor guidelines
- You must have a GitHub account to fork the repository and create pull requests
Dev environment setup
You will need to set up your development workstation with the following
- Visual Studio 2022
- Make sure Visual Studio is running the latest updates from Microsoft, CSLA .NET is almost always at or ahead of any current release of Visual Studio tooling
- Workloads
- Windows client development (for Windows Forms, WPF, UWP)
- Mobile development (for Xamarin)
- Web development (for ASP.NET)
- .NET Core and ASP.NET Core
- Git client tooling of your choice
Getting the project
Once you have that all installed, and you have your GitHub credentials, you’ll need to do the following:
- Fork the Marimer LLC csla project
- Clone your fork to your dev workstation
- Add an upstream remote for Marimer LLC (
git remote add marimer https://github.com/marimerllc/csla) - Create a feature branch in which to do your work
- Follow the CSLA GitHub Flow document
Coding standards
As far as coding standards – follow the code style you see in CSLA .NET. Some of the basics are covered by the editorconfig file in the repo. Here are some other basic guidelines/rules:
- Casing and naming
- Use _fieldName for all instance fields
- Use ClassName
- Use PropertyName and MethodName
- Use parameterName for parameters
- When you do a Commit make sure to follow the proper format for the commit description (see below)
- When you create a Pull Request it will trigger a continuous integration build via Appveyor. If that build fails, correct any issues and Push changes to your branch - that will automatically trigger a new CI build
- ⚠ Make sure to include the issue number in your PR description (not just the title) so GitHub links the PR and issue
- If your PR closes one or more issues, use the "Closes #123" or "Fixes #123" phrase in your PR description, as when the PR is accepted this will auto-close your issue(s)
#999 Detailed description of your change here