Skip to content

Commit b6d1f74

Browse files
committed
Minify CSS and JavaScript and include the vendor scripts not available on public CDNs
1 parent 58bf308 commit b6d1f74

16 files changed

+41
-68
lines changed

Diff for: .bowerrc

-3
This file was deleted.

Diff for: .gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
1+
/bower_components
12
/node_modules
23
/npm-debug.log

Diff for: README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
- Git commit/push into the master after changes
1212

1313
## Production
14-
- Set environment variable "NODE_ENV" to "production" to enable cache for swig templates and language data
14+
- Set environment variable "NODE_ENV" to "production" to enable cache for swig templates
1515

1616
## Try it online
1717
http://angularjs-skeleton.herokuapp.com

Diff for: app.js

+1-3
Original file line numberDiff line numberDiff line change
@@ -47,9 +47,7 @@ var config = {
4747
}]
4848
],
4949
directory: {
50-
homepage: {
51-
server: process.env.SERVER
52-
}
50+
homepage: {}
5351
}
5452
}
5553
};

Diff for: js/app.js

+9-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,12 @@
11
'use strict';
22

3+
// Load the vendor dependencies not available in public CDNs
4+
5+
require('../bower_components/angular-bootstrap-show-errors/src/showErrors.js');
6+
require('../bower_components/angular-route/angular-route.js');
7+
require('../bower_components/angular-translate/angular-translate.js');
8+
require('../bower_components/angular-translate-loader-static-files/angular-translate-loader-static-files.js');
9+
310
// AngularJS and translation provider initialization
411

512
var dependencies = [
@@ -13,11 +20,11 @@ var dependencies = [
1320
];
1421

1522
angular.module('app', dependencies)
16-
.config(function ($translateProvider) {
23+
.config(['$translateProvider', function ($translateProvider) {
1724
$translateProvider.useStaticFilesLoader({
1825
prefix: '/languages/',
1926
suffix: '.json'
2027
});
2128
$translateProvider.registerAvailableLanguageKeys(['de', 'en']);
2229
$translateProvider.determinePreferredLanguage();
23-
});
30+
}]);

Diff for: js/controllers/homepage.js

+6-8
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,9 @@ module.exports = 'controllers/homepage';
66
var dependencies = [];
77

88
angular.module(module.exports, dependencies)
9-
.config(['$routeProvider',
10-
function ($routeProvider) {
11-
$routeProvider
12-
.when('/', {
13-
templateUrl: 'views/homepage.html'
14-
});
15-
}
16-
]);
9+
.config(['$routeProvider', function ($routeProvider) {
10+
$routeProvider
11+
.when('/', {
12+
templateUrl: 'views/homepage.html'
13+
});
14+
}]);

Diff for: js/controllers/navigation.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@ module.exports = 'controllers/navigation';
66
var dependencies = [];
77

88
angular.module(module.exports, dependencies)
9-
.controller('NavigationCtrl', function ($scope, $location) {
9+
.controller('NavigationCtrl', ['$scope', '$location', function ($scope, $location) {
1010
$scope.isActive = function (path) {
1111
return path === $location.path();
1212
};
13-
});
13+
}]);

Diff for: modules/homepage.js

+2-4
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,13 @@
33
/**
44
* Serves the homepage for the application
55
* @example
6-
homepage: {
7-
server: process.env.SERVER
8-
}
6+
homepage: {}
97
*/
108

119
module.exports = function (config, libraries, services) {
1210
var app = services.app;
1311

1412
app.get('/', function (req, res) {
15-
res.render('layout.html.twig', { server: config.server });
13+
res.render('layout.html.twig', { config: config, env: app.get('env') });
1614
});
1715
};

Diff for: package.json

+6-4
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,13 @@
33
"version": "1.0.0",
44
"homepage": "http://github.com/dragonnodejs/angularjs-skeleton",
55
"scripts": {
6-
"start": "node cluster.js",
7-
"postinstall": "npm run bower && npm run js",
6+
"postinstall": "npm run bower && npm run css && npm run js",
87
"bower": "./node_modules/bower/bin/bower install",
9-
"js": "./node_modules/browserify/bin/cmd.js ./js/app.js -o ./web/js/app.js",
10-
"start-watch": "./node_modules/nodemon/bin/nodemon.js --watch app.js --watch modules app.js",
8+
"css": "./node_modules/minifier/index.js ./web/css/app.css",
9+
"js": "./node_modules/browserify/bin/cmd.js ./js/app.js -o ./web/js/app.js && ./node_modules/minifier/index.js ./web/js/app.js",
1110
"js-watch": "./node_modules/watchify/bin/cmd.js ./js/app.js -o ./web/js/app.js",
11+
"start": "node cluster.js",
12+
"start-watch": "./node_modules/nodemon/bin/nodemon.js --watch app.js --watch modules app.js"
1213
"test": "mocha -R spec"
1314
},
1415
"dependencies": {
@@ -17,6 +18,7 @@
1718
"dragonnodejs-webserver": "^9.0.0",
1819
"bower": "^1.3.12",
1920
"browserify": "^8.1.3",
21+
"minifier": "^0.6.2",
2022
"newrelic": "^1.15.1",
2123
"throng": "^1.0.0"
2224
},

Diff for: views/layout.html.twig

+11-14
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<!DOCTYPE html>
2-
<html ng-app="app">
2+
<html ng-app="app" ng-strict-di>
33
<head>
44
<meta charset="utf-8">
55
<meta name="viewport" content="width=device-width, initial-scale=1">
@@ -8,14 +8,14 @@
88

99
<link href="//maxcdn.bootstrapcdn.com/bootstrap/{{ bower.bootstrap }}/css/bootstrap.min.css" rel="stylesheet">
1010
<link href="//maxcdn.bootstrapcdn.com/bootstrap/{{ bower.bootstrap }}/css/bootstrap-theme.min.css" rel="stylesheet">
11-
<link href="/css/angular-bootstrap.css" rel="stylesheet">
12-
<link href="/css/angular-bootstrap-show-errors.css" rel="stylesheet">
13-
<link href="/css/sticky-footer.css" rel="stylesheet">
1411

15-
<link href="/css/app.css" rel="stylesheet">
12+
{% if env == 'development' %}
13+
<link href="/css/app.css" rel="stylesheet">
14+
{% else %}
15+
<link href="/css/app.min.css" rel="stylesheet">
16+
{% endif %}
1617
</head>
1718
<body>
18-
1919
<nav class="navbar navbar-default navbar-fixed-top">
2020
<div class="container">
2121
<div class="navbar-header">
@@ -72,14 +72,11 @@
7272
<script src="//ajax.googleapis.com/ajax/libs/jquery/{{ bower.jquery }}/jquery.min.js"></script>
7373
<script src="//maxcdn.bootstrapcdn.com/bootstrap/{{ bower.bootstrap }}/js/bootstrap.min.js"></script>
7474
<script src="//ajax.googleapis.com/ajax/libs/angularjs/{{ bower.angular }}/angular.min.js"></script>
75-
<script src="/js/vendor/angular-bootstrap-show-errors/src/showErrors.js"></script>
76-
<script src="/js/vendor/angular-route/angular-route.min.js"></script>
77-
<script src="/js/vendor/angular-translate/angular-translate.min.js"></script>
78-
<script src="/js/vendor/angular-translate-loader-static-files/angular-translate-loader-static-files.min.js"></script>
7975

80-
<script>
81-
var server = '{{ server }}';
82-
</script>
83-
<script src="/js/app.js"></script>
76+
{% if env == 'development' %}
77+
<script src="/js/app.js"></script>
78+
{% else %}
79+
<script src="/js/app.min.js"></script>
80+
{% endif %}
8481
</body>
8582
</html>

Diff for: web/css/.gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
/app.min.css

Diff for: web/css/angular-bootstrap-show-errors.css

-7
This file was deleted.

Diff for: web/css/angular-bootstrap.css

-4
This file was deleted.

Diff for: web/css/app.css

Whitespace-only changes.

Diff for: web/css/sticky-footer.css

-15
This file was deleted.

Diff for: web/js/.gitignore

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
1-
/vendor
21
/app.js
2+
/app.min.js

0 commit comments

Comments
 (0)