Frontend architecture for Vimojo Platform
Easy: A frontend for vimojo's web platform. Just the part the user interacts with.
It's build with AngularJS (1.6.5), and uses Gulp to do automatic stuff, and Karma and Jasmine to test that everything works as expected.
(thanks to npm and gulp)
Clone the repo to your working folder:
git clone [email protected]:videona/platform-frontend.git
Go there from the console, and:
npm install
gulp build
npm start
And that's all, folkes!!
Well, wasn't all. You can also run tests with npm, just execute:
npm test
You can do the same with:
karma start
There are some tasks created to make your dev work easy. I'll try to put it all here, but will be a more acurate description of all of this on the wiki.
- js: Join and minify all app js, and put it into
/dist/js(both joint and minified versions). - html: Move all HTML files (views) to /dist, keeping folder structures.
- tests: Join all tests, and put it into
/dist/js/test.js. - serve: Create a server to test in your machine and serve your files.
- build: Execute (in parallel)
js,htmlandtests. - watch: Start a watcher who update
/distfiles every time a source file change (launch it specific task).
We are working with branches. Basically, we have:
- A
masterbranch, with a production version of the app. - A
devbranch, with the last stable updates. - Some feature branches, with the hotest features we're actually developing.
- You might see some other branches, as
hotfixor anything. Will be descriptive.
The workflow is, basically,
- Create a branch from
devfor your feature. - Work on that branch, and do your code, tests and that stuff there.
- Once you've got it ready, merge again
devbranch with yours, to get back all new changes. Resolve all the possible conflicts, and make sure ALL tests are working. - In that moment, you'll be able to launch a Pull Request to
dev. - That PR will be reviewed and approved or rejected.
- If rejected, go back to step 2.
- If approved, good job!
- Periodically, a new app version will be sent to
master.
You can use this code as you like. If you find a bug, or want to ask for a feature, just open an issue, and we'll do our best. If you can fix it, do a pull request to dev branch, and we promise to review it as fast as possible to merge it.
If you are new on this open source world, here is a short guide about how to make a pull request to contribute:
- Fork then clone
git clone [email protected]:your-username/inapp-support.gitvideona/platform-frontend repository. - Create a new branch in your personal forked repo, with a name similar to your edits, such as
fix-whatever. - Make your edits inside your new branch.
- Commit them and push them back to your personal github fork.
- Make a new Pull Request on the videona/platform-frontend repo. Point your branch to the
devvideona/platform-frontend's branch and submit. - We will do my best to review and accept the code as soon as possible.