diff --git a/docs/git-submodule-workflow.md b/docs/git-submodule-workflow.md
new file mode 100644
index 00000000..dbf46e28
--- /dev/null
+++ b/docs/git-submodule-workflow.md
@@ -0,0 +1,33 @@
+# Git Submodule Workflow
+
+1. Create a new repository on bitbucket
+2. Clone it and create the main file: `my_component.js`
+```javascript
+ import React from 'react';
+
+ let MyComponent = React.createClass({
+ render() {
+ return (
+
+ );
+ }
+ });
+
+export default MyComponent;
+```
+
+3. Commit and push to your newly created repository
+4. Open `.gitignore` and add your future package folder to *NOT* to be ignored by git `!node_modules/`
+5. Copy the repository's SSH link from bitbucket
+6. Open a shell and go to `cd onion/node_modules`
+7. Do `git submodule add `
+8. Git will clone the repository and add it to `node_modules`
+9. open `package.json` inside of onion and adjust the `browser` field
+```
+"browser": {
+ "MyComponent": "./node_modules/my_component/my_component.js"
+ }
+```
+10. (Optional) If you have browserify-shims in your newly created module, then add them in the `browserify-shim` as well. Check `package.json` for example.
+11. Open `gulpfile.js` and find the `filesToWatch` property of `var config`. Add your newly added `my_component` folder to it: `'node_modules//*.js'`
+12. THAT'S IT! YOU'RE AWESOME!
diff --git a/gulpfile.js b/gulpfile.js
index a055e765..38c27949 100644
--- a/gulpfile.js
+++ b/gulpfile.js
@@ -45,7 +45,12 @@ var config = {
'react',
'es6'
]
- }
+ },
+ filesToWatch: [
+ 'build/css/*.css',
+ 'build/js/*.js',
+ 'node_modules/react-s3-fineuploader/*.js'
+ ]
};
var constants = {
@@ -83,7 +88,7 @@ gulp.task('run-server', function() {
gulp.task('browser-sync', function() {
browserSync({
- files: ['build/css/*.css', 'build/js/*.js'],
+ files: config.filesToWatch,
proxy: 'http://localhost:4000',
port: 3000
});