Third-party additions are essential for a project like this. Scandiojs is open for any changes and suggestions and will try to incorporate your own ideas. We only demand a few thing of you to get your code added to this library.
- Currently two main branches are used for development:
master
anddevelop
master
always containing a deployable version of scandiojsdevelop
used to merge feature branches into
- To fix or add a feature work in
develop
or branch of it withgit checkout feature/abc
- The feature branch can then just be merged into
develop
with or without arebase
- The feature branch can then just be merged into
- When creating a new release version just increase the
package.version
indevelop
orfeature-abc
- However, when merging into
master
please merge a non fast-forward (on mastergit merge develop --no-ff
) to keep master clean of all your incremental commits
- However, when merging into
- Make sure you have a GitHub account
- Fork the repository on GitHub into your own account if your not an organization's member
- Create a topic branch from where you want to base your work of
- This is usually the master branch
- To quickly create a topic branch based on master:
git branch feature/my-addition master
then checkout the new branch withgit checkout feature/my-addition
- Make commits of logical units
- Check for unnecessary whitespace with
git diff --check
before committing - Make sure your commit messages are in the proper format
We only demand that you follow a simple TDD/BDD approach before adding your features.
Have a look at the test/featurerequests
-directory and checkout the src
- and test
-subdirectory. The src
-directory will contain your feature as a mixin while its under development. You can use the src/template.js
-file as a blueprint.
After creating your own module file (e.g. tde_string.js) from the template.js
-file you create your own module which mixes in functions into scandiojs
. You could also mixin functions the the global object by omitting the namespace as null
. But beware: you can also overwrite existing functionality which might be unintended and might also break exisiting specs.
You're now ready to test your code after you created testsuite under test/featurerequests
using the test/template.js
-file. After adding the tests you think nessesary and letting them pass by following the intructions in the README.md
(running testem with grunt test-em
or testem
) you should open a pull request and wait for us to check it out.
After we decided to like what you did, we'll move the code from the featurerequest/src/tde_string.js
-file into the library and get back to you!
- Push your changes to a topic branch in your fork of the repository.
- Submit a pull request to the repository.
- Wait for us to check our your code!