Skip to content

Commit 5a80fea

Browse files
committed
Initial boilerplate code
1 parent bf2c270 commit 5a80fea

File tree

11 files changed

+250
-0
lines changed

11 files changed

+250
-0
lines changed

app/app.component.js

Lines changed: 37 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

app/app.component.js.map

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

app/main.js

Lines changed: 19 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

assets/scss/app.scss

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
body {
2+
padding: 32px;
3+
margin: 32px;
4+
font-family: "Roboto", Arial, sans-serif;
5+
font-size: 16px;
6+
}

dev/app.component.ts

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
import {Component} from 'angular2/core';
2+
3+
@Component({
4+
selector: 'my-app',
5+
template: `
6+
<h1>Angular 2 boilerplate</h1>
7+
`
8+
})
9+
export class AppComponent {}

dev/main.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
///<reference path="../node_modules/angular2/typings/browser.d.ts"/>
2+
import {bootstrap} from 'angular2/platform/browser';
3+
import {AppComponent} from "./app.component";
4+
5+
bootstrap(AppComponent);

gulpfile.js

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
var gulp = require('gulp');
2+
3+
var assetsDev = 'assets/';
4+
var assetsProd = 'src/';
5+
6+
var appDev = 'dev/';
7+
var appProd = 'app/';
8+
9+
/* Mixed */
10+
var ext_replace = require('gulp-ext-replace');
11+
12+
/* CSS */
13+
var postcss = require('gulp-postcss');
14+
var sourcemaps = require('gulp-sourcemaps');
15+
var autoprefixer = require('autoprefixer');
16+
var precss = require('precss');
17+
var cssnano = require('cssnano');
18+
19+
/* JS & TS */
20+
var jsuglify = require('gulp-uglify');
21+
var typescript = require('gulp-typescript');
22+
23+
/* Images */
24+
var imagemin = require('gulp-imagemin');
25+
26+
var tsProject = typescript.createProject('tsconfig.json');
27+
28+
gulp.task('build-css', function () {
29+
return gulp.src(assetsDev + 'scss/*.scss')
30+
.pipe(sourcemaps.init())
31+
.pipe(postcss([precss, autoprefixer, cssnano]))
32+
.pipe(sourcemaps.write())
33+
.pipe(ext_replace('.css'))
34+
.pipe(gulp.dest(assetsProd + 'css/'));
35+
});
36+
37+
gulp.task('build-ts', function () {
38+
return gulp.src(appDev + '**/*.ts')
39+
.pipe(sourcemaps.init())
40+
.pipe(typescript(tsProject))
41+
.pipe(sourcemaps.write())
42+
//.pipe(jsuglify())
43+
.pipe(gulp.dest(appProd));
44+
});
45+
46+
gulp.task('build-img', function () {
47+
return gulp.src(assetsDev + 'img/**/*')
48+
.pipe(imagemin({
49+
progressive: true
50+
}))
51+
.pipe(gulp.dest(assetsProd + 'img/'));
52+
});
53+
54+
gulp.task('build-html', function () {
55+
return gulp.src(appDev + '**/*.html')
56+
.pipe(gulp.dest(appProd));
57+
});
58+
59+
gulp.task('watch', function () {
60+
gulp.watch(appDev + '**/*.ts', ['build-ts']);
61+
gulp.watch(assetsDev + 'scss/**/*.scss', ['build-css']);
62+
gulp.watch(assetsDev + 'img/*', ['build-img']);
63+
});
64+
65+
gulp.task('default', ['watch', 'build-ts', 'build-css']);

index.html

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
<!doctype>
2+
<html>
3+
<head>
4+
<base href="/">
5+
<title>Angular 2 boilerplate</title>
6+
<meta name="viewport" content="width=device-width, initial-scale=1">
7+
<!-- Load libraries -->
8+
<!-- IE required polyfills, in this exact order -->
9+
<script src="node_modules/es6-shim/es6-shim.min.js"></script>
10+
<script src="node_modules/systemjs/dist/system-polyfills.js"></script>
11+
<script src="node_modules/angular2/es6/dev/src/testing/shims_for_IE.js"></script>
12+
<script src="node_modules/angular2/bundles/angular2-polyfills.js"></script>
13+
<script src="node_modules/systemjs/dist/system.src.js"></script>
14+
<script src="node_modules/rxjs/bundles/Rx.js"></script>
15+
<script src="node_modules/angular2/bundles/angular2.js"></script>
16+
<script src="node_modules/angular2/bundles/router.dev.js"></script>
17+
<script src="node_modules/angular2/bundles/http.js"></script>
18+
19+
<link rel="stylesheet" href="src/css/app.css">
20+
</head>
21+
<body>
22+
<my-app>Loading...</my-app>
23+
24+
<script>
25+
System.config({
26+
packages: {
27+
app: {
28+
format: 'register',
29+
defaultExtension: 'js'
30+
}
31+
}
32+
});
33+
System.import('app/main')
34+
.then(null, console.error.bind(console));
35+
</script>
36+
</body>
37+
</html>

package.json

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
{
2+
"name": "angular2-gulp-browserify-boilerplate",
3+
"version": "0.1.0",
4+
"description": "Angular 2, Express, Gulp, Browserify and SASS/Stylus boilerplate",
5+
"scripts": {
6+
"lite": "lite-server",
7+
"gulp": "gulp",
8+
"start": "concurrent \"npm run gulp\" \"npm run lite\" "
9+
},
10+
"repository": {
11+
"type": "git",
12+
"url": "git://github.com/rkazakov/angular2-gulp-browserify-boilerplate.git"
13+
},
14+
"author": "Ruslan Kazakov",
15+
"license": "MIT",
16+
"dependencies": {
17+
"express": "^4.13.3",
18+
"angular2": "2.0.0-beta.14",
19+
"systemjs": "0.19.25",
20+
"es6-shim": "^0.35.0",
21+
"reflect-metadata": "0.1.2",
22+
"rxjs": "5.0.0-beta.2",
23+
"zone.js": "0.6.6"
24+
},
25+
"devDependencies": {
26+
"autoprefixer": "^6.3.5",
27+
"cssnano": "^3.4.0",
28+
"concurrently": "^2.0.0",
29+
"gulp": "^3.9.0",
30+
"gulp-ext-replace": "^0.2.0",
31+
"gulp-imagemin": "^2.4.0",
32+
"gulp-postcss": "^6.0.1",
33+
"gulp-sourcemaps": "^1.6.0",
34+
"gulp-typescript": "^2.10.0",
35+
"gulp-uglify": "^1.5.1",
36+
"lite-server": "^2.1.0",
37+
"postcss": "^5.0.13",
38+
"postcss-scss": "^0.1.3",
39+
"precss": "^1.3.0"
40+
}
41+
}

src/css/app.css

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
body{padding:32px;margin:32px;font-family:Roboto,Arial,sans-serif;font-size:16px}

0 commit comments

Comments
 (0)