UNPKG

3.33 kBMarkdownView Raw
1[gulp](https://github.com/wearefractal/gulp)-connect [![NPM version][npm-image]][npm-url] [![Downloads][downloads-image]][downloads-url] [![Travis][travis-image]][travis-url]
2==================
3
4
5> Gulp plugin to run a webserver (with LiveReload)
6
7##### Hint: [New plugin](https://github.com/schickling/gulp-webserver) available
8
9New plugin based on connect 3 using the `gulp.src()` API. Written in plain javascript.
10https://github.com/schickling/gulp-webserver
11
12
13## Install
14
15```
16npm install --save-dev gulp-connect
17```
18
19
20## Usage
21
22```js
23var gulp = require('gulp'),
24 connect = require('gulp-connect');
25
26gulp.task('connect', function() {
27 connect.server();
28});
29
30gulp.task('default', ['connect']);
31```
32
33
34#### LiveReload
35```js
36var gulp = require('gulp'),
37 connect = require('gulp-connect');
38
39gulp.task('connect', function() {
40 connect.server({
41 root: 'app',
42 livereload: true
43 });
44});
45
46gulp.task('html', function () {
47 gulp.src('./app/*.html')
48 .pipe(connect.reload());
49});
50
51gulp.task('watch', function () {
52 gulp.watch(['./app/*.html'], ['html']);
53});
54
55gulp.task('default', ['connect', 'watch']);
56```
57
58#### Multiple server
59
60```js
61var gulp = require('gulp'),
62 stylus = require('gulp-stylus'),
63 connect = require('gulp-connect');
64
65gulp.task('connectDev', function () {
66 connect.server({
67 root: ['app', 'tmp'],
68 port: 8000,
69 livereload: true
70 });
71});
72
73gulp.task('connectDist', function () {
74 connect.server({
75 root: 'dist',
76 port: 8001,
77 livereload: true
78 });
79});
80
81gulp.task('html', function () {
82 gulp.src('./app/*.html')
83 .pipe(connect.reload());
84});
85
86gulp.task('stylus', function () {
87 gulp.src('./app/stylus/*.styl')
88 .pipe(stylus())
89 .pipe(gulp.dest('./app/css'))
90 .pipe(connect.reload());
91});
92
93gulp.task('watch', function () {
94 gulp.watch(['./app/*.html'], ['html']);
95 gulp.watch(['./app/stylus/*.styl'], ['stylus']);
96});
97
98gulp.task('default', ['connectDist', 'connectDev', 'watch']);
99
100```
101
102## API
103
104#### options.root
105
106Type: `Array or String`
107Default: `Directory with gulpfile`
108
109The root path
110
111#### options.port
112
113Type: `Number`
114Default: `8080`
115
116The connect webserver port
117
118#### options.host
119
120Type: `String`
121Default: `localhost`
122
123#### options.https
124
125Type: `Boolean`
126Default: `false`
127
128#### options.livereload
129
130Type: `Object or Boolean`
131Default: `false`
132
133#### options.livereload.port
134
135Type: `Number`
136Default: `35729`
137
138#### options.fallback
139
140Type: `String`
141Default: `undefined`
142
143Fallback file (e.g. `index.html`)
144
145#### options.middleware
146
147Type: `Function`
148Default: `[]`
149
150```js
151gulp.task('connect', function() {
152 connect.server({
153 root: "app",
154 middleware: function(connect, opt) {
155 return [
156 // ...
157 ]
158 }
159 });
160});
161```
162
163## Contributors
164
165[AveVlad](https://github.com/AveVlad) and [schickling](https://github.com/schickling)
166
167
168[npm-url]: https://npmjs.org/package/gulp-connect
169[npm-image]: https://badge.fury.io/js/gulp-connect.svg
170[travis-url]: https://travis-ci.org/AveVlad/gulp-connect
171[travis-image]: https://travis-ci.org/AveVlad/gulp-connect.svg
172[downloads-url]: https://github.com/AveVlad/gulp-connect/
173[downloads-image]: http://img.shields.io/npm/dm/gulp-connect.svg