Skip to content

Latest commit

 

History

History
105 lines (70 loc) · 3.27 KB

CONTRIBUTING.md

File metadata and controls

105 lines (70 loc) · 3.27 KB

For contributors

Introduction

Thank you for your interest to contribute to EduCATS Xamarin project!

You can help us with the following:

  • New features
  • Bug fixes
  • Refactoring
  • Unit tests
  • UI tests
  • Documentation improvements
  • Bug reports
  • Feature requests

To start you can check open issues and choose a preferred work. You can also start testing beta version of application (more details on README) and then create your own bug reports or feature requests.

If you're a designer you can add your own graphics which you can import inside the projects or graphics directory.

Ask repository owner to add you to contributors list.

Code rules

  • EduCATS project uses MVVM as the base architectural pattern pattern.

  • Don't forget to make documentation comments on your code.

  • Private variables and properties should start with underscore (e.g. const float _frameRadius = 10).

  • Private methods should start with lowercase letter.

  • Public methods, properties and variables should start with uppercase letter.

  • All constants should be placed at the top of the class (if they are used only inside that class), in the Constants/GlobalConsts.cs class (if they are used across the project), in Themes (if they represent colors or images, more details here or in Localization (if they represent localized key, more details here.

  • API services should be wrapped inside DataAccess.cs (more details here).

  • Data managers and other helpers should be placed inside Helpers.

  • Cover new features with Unit-tests.

Repository

Branches

Branches must be created from develop branch. Direct pushes to develop and master are not allowed.

Name conventions for branches:

[feature/bug/update]/[#issue_number-branch-name]

Examples:

bug/#123-app-settings-crash
update/docs-resources
feature/new-page
feature/#41-new-feature

Commits

Name conventions for commits:

[ADD/DELETE/UPDATE/FIX/ETC] [#ISSUE_NUMBER] Description

Examples:

[FIX] [#123] App settings crash
[UPDATE] Docs resources
[ADD] New page
[ADD] [#41] New feature
[FEATURE] New app settings

Commit pattern for docs update:

git commit -m "[ADD] Documentation source" --author="nocontribute <>"

In this case GitHub will ignore docs/ directory contribution (500,000+ lines) and won't spoil your statistics.

Pull requests

Before submitting pull request you should choose the reviewer.
The following checks should pass:

Name conventions for pull request titles are the same as for commits.