Public | Automated Build

Last pushed: a year ago
Short Description
Visualization of Dropbox account statistics
Full Description


MetriX is just an experiment of multiple technologies and tools which execute one simple task - help to free some space at your Dropbox account. It may look like killing flies with rocket launcher but actually here we have that case when the goal is less important than a path to it.

Working instance of MetriX is available by following URL:

So let's see what we have here...

What you may find helpful in this project (problems solved):

  • Support authentication on UI using AngularJS
  • Global HTTP errors handling using AngularJS
  • Minification of JavaScript, CSS and AngularJS HTML Templates
  • Combining Grunt and Maven build processes
  • Making Heroku support Grunt+Maven build process

So, if you have any questions related to these topics - feel free to ask.

###Build and Run How-To

I assume that you have Grunt and maven installed. You will need the following environment variables for build and run:

  • API_KEY - Dropbox API key;
  • API_SECRET - Dropbox API secret;
  • FIXED_THREAD_POOL_SIZE - number of threads for parsing Dropbox accounts. Recommended number: 3.

If you are running on Heroku also add the following variables:

  • BUILDPACK_URL - we need to chose special buildpack which will run both Grunt and Maven. Set variable to:;
  • HTTPS_ONLY - this is hack for Heroku. Just set it to "true";
  • JAVA_TOOL_OPTIONS - set value to "-Dfile.encoding=UTF-8" otherwise you'll have problems with locales;
  • PRODUCTION_BUILD - this variable can be used for switching on/off JS/CSS/Templates minification.

If you are building on your own machine, run the following command to build artifact

$ mvn clean && npm install && grunt && mvn package

or just run command below to start service in jetty

$ mvn clean && npm install && grunt && mvn jetty:run

That's it. Thanks for your interest :-)

Docker Pull Command
Source Repository