Though TAMU Scholars is developed and maintained by Texas A&M University Libraries, we welcome community contributions. Involvement in TAMU Scholars can take many forms:
Deploying TAMU Scholars and trying it out at your own institution is itself a way of contributing to the development process. For more information on deployment strategies please see the relevant documentation.
Once you are using TAMU Scholars the creation of new issues through Github is a major method of contribution towards TAMU Scholars development. Issues can be motivated by the discovery of a bug in the software, or by the desire to see either new features added to cap or existing features behaving differently.
These three categories of issue can be submitted using the following template:
[*] Bug Report
[] Feature Enhancement
[] Feature Request
Current Behavior:
[A description of the current behavior. This could include a list of steps to reproduce in the instance of a
Bug Report, and can be 'N/A' for Feature Requests]
Desired Behavior:
[A description of the expected/desired behavior of the application]
Relevant Information:
[This section can include relevant error messages, or links to information that pertains to the issue]
Once an issue has been filed it will be curated by a TAMU Scholars developer and receive the appropriate labeling.
Community code and documentation contributions are welcome, and should take the form of a Github Pull Request (PR). Each PR will need to be reviewed by a TAMU Scholars developer. A review will result in the PR being accepted and merged, a descriptive request for changes, or the PR being closed along with a detailed explanation.
It is our intention to maintain labeling on issues that are deemed to be low difficulty, in order to provide a good point of entry for those looking to begin contributing code or documentation.
A PR description should include a list of the specific issues resolved, the predicted semantic versioning impact of the changes and a description which characterizes the nature of the changes made.
For more information about semantic versioning please see this reference. In general keep in mind:
- A Major Change is a breaking change that is not backwards compatible.
- A Minor Change is a non breaking change that is backwards compatible to the last major change.
- A Patch is a trivial change or bug fix that should not impact compatibility
Please confirm you PR description to the following template:
Resolves:
- [List of # references to specific issues addressed by this PR]
Changes:
[*] Major
[] Minor
[] Patch
[A description of the approach taken to resolving those issues]
In addition to a well formatted PR we would also appreciate granular commits with descriptive messages. For instance a good commit message may be Moved /foo endpoint logic into a FooService
, whereas Everything I did Friday
is less granular or descriptive.
If your commits do not conform to these recommendations you might consider rebasing your PR. Instructions for how this might work can be found here.
We look forward to seeing your contributions. If you have any additional questions please contact the TAMU Scholars developers at [email protected].