Contributing to WhitestormJS
Contributions to WhitestormJS are welcome; to make things easier, we've included a Getting Started section.
We look forward to your contributions to WhitestormJS.
Getting Started
Reporting Bugs
If you've found a reproduceable bug, submit an issue! If you're sure that the issue is caused by WhitestormJS, submitting an issue will help us fix the problem.
You're welcome to fix things for us, and submit pull requests; it frees up time for us to implement useful new features.
Adding Features
If you've added a new feature to WhitestormJS and would like for it to be included, submit a pull request. We'll take a look at it.
Building WhitestormJS
WhitestormJS can be built by installing Node.js, and the gulp package through npm.
After that, clone the repository anywhere you'd like (git clone https://github.com/WhitestormJS/whitestorm.js.git
).
Open the new directory (./WhitestormJS/
by default) using whatever terminal emulator you'd like.
You can build WhitestormJS with the following command: gulp build
WhitestormJS will be built, and written to build/whitestorm.js
, and build/whitestorm.min.js
.
Commiting
All engine code is in src/
folder.
*Do not edit files in build/
folder!!!
* Commit names.
Codes.
- WIP. - Work in progress.
- CSF. - Code style fix. (Comes with file name.)
- TU. - Temporary update. (Will be changed later.)
- README. - You changed README.md file.
- LICENSE. - You changed LICENSE.md file.
- CONTRIBUTING. - You changed CONTRIBUTING.md file.
Fixed Issue.
If your commit fixes issue on github, you must add Fixed #25
. Where #25 is ID of your issue.
Syntax.
- Code - Can be
WIP.
,CSF.
orTU.
(If your commit matches one of them.) - Comment - Your comment to commit. (If you want or you have no code.)
- Fix - Example:
Fixed #25
. (If you fixed an issue or your commit made some task from issue.)
After code/comment must always be a dot and they must start with big letter.
If you have
CSF.
your comment must be a name of file you fixed. No dot after filename
Examples.
Good:
WIP. Files updated.
CSF. ShaderTerrain.js Fixed #25
WIP.
TU. Fixed #3
Poor:
Fixed #25
Fixed code style.
(Use "CSF.")WIPSHADEERTERRAINJSFIXES####2016!!!!
WIP shader
(No dot afterWIP
, comment starts with small letter.)
* Code style guidelines:
- Follow code style guides:
- Each line of code should not be longer than 80 symbols
- https://www.codacy.com/app/siteprogcom/WhitestormJS/dashboard
- After you fixed one file:
- Write
CSF. {filenamehere}
to current version inCHANGELOG.md
file. - Commit with msg
CSF. {filenamhere} #25
or justCSF.
- Write
CHANGELOG.md
* Adding changes toIf you will contribute to this project, please follow this rules of editting CHANGELOG.md each time you make changes:
Comment: Added ...
Issue fixed: Fixed #{issueId}
Issue fixed (extended): Fixed #{issueId} "{issueDesc}"
Fixed file/example/function: Fixed ...
Files moved: *folder/ -> anotherfolder/*
Changed structure of folder: *folder/ + sorted = {sortedFiles}*
Library update: **{libName} update. {rnum} -> {rnum}**
Function arguments changed: {funcName}({arguments}) -> {funcName}({arguments})
Definition:
{issueID} - Github issue id. Example: #7.
{issueDesc} - Short issue description. Example: Shadowmap error.
{sortedFiles} - List of sorted files/folders. Example: ai/, big.png, default.png.
{libName} - Included library name. Example: Three.js.
{rnum} - Revision/version number. Example: r79 or v0.1.
{funcName} - Function name.
{arguments} - Function arguments.
Testing WhitestormJS
Our tests are run using Mocha. We're still adding more tests.