# Compiled class file
*.class

# Log file
*.log

# BlueJ files
*.ctxt

# Mobile Tools for Java (J2ME)
.mtj.tmp/

# Package Files #
*.jar
*.war
*.ear
*.zip
*.tar.gz
*.rar

# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
hs_err_pid*

# Bower
bower_components

# JS and CSS Deps
src/main/resources/static/js/jquery*
src/main/resources/static/js/angular*
src/main/resources/static/js/bootstrap*
src/main/resources/static/js/core*
src/main/resources/static/css/bootstrap*
