Skip to content
This repository has been archived by the owner. It is now read-only.

Commit 01d61fd

Browse files
committed
firstcommit
0 parents  commit 01d61fd

36 files changed

+11563
-0
lines changed

.gitignore

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
dist
2+
node_modules
3+
.publish

gulpfile.js

+144
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,144 @@
1+
var gulp = require('gulp');
2+
var del = require('del');
3+
var browserSync = require('browser-sync').create();
4+
var sass = require('gulp-sass');
5+
var autoprefixer = require('gulp-autoprefixer');
6+
var concatCss = require('gulp-concat-css');
7+
var cleanCSS = require('gulp-clean-css');
8+
var rename = require("gulp-rename");
9+
var uglify = require('gulp-uglify');
10+
var plumber = require("gulp-plumber");
11+
var ghPages = require('gulp-gh-pages');
12+
var svgSprite = require('gulp-svg-sprite');
13+
var svgmin = require('gulp-svgmin');
14+
15+
//Пути
16+
const paths = {
17+
styles: {
18+
src: "src/styles/main.scss",
19+
watch: "src/styles/**/*.scss",
20+
dest: "dist/styles/"
21+
},
22+
stylesNlz: {
23+
src: "src/styles/layout/normalize.css",
24+
dest: "dist/styles/layout/"
25+
},
26+
stylesBoot: {
27+
src: "src/styles/layout/bootstrap-grid.min.css",
28+
dest: "dist/styles/layout/"
29+
},
30+
scripts: {
31+
src: "src/scripts/main.js",
32+
watch: "src/scripts/*.js",
33+
dest: "dist/scripts/"
34+
},
35+
html: {
36+
src: "src/*.html",
37+
watch: "src/*.html",
38+
dest: "dist/"
39+
},
40+
images: {
41+
src: "src/images/**/*.*",
42+
dest: "dist/images/"
43+
},
44+
fonts: {
45+
src: "src/fonts/*.*",
46+
dest: "dist/fonts/"
47+
}
48+
};
49+
50+
51+
//Удаление папки dist
52+
gulp.task("clean", () => {
53+
return del("dist");
54+
});
55+
56+
//Создание ветки gh-pages и загрузка туда содержимого папки dist
57+
gulp.task("deploy", () => {
58+
return gulp.src("./dist/**/*").pipe(ghPages());
59+
});
60+
61+
//Перенос файлов
62+
gulp.task('html', function() {
63+
return gulp
64+
.src(paths.html.src)
65+
.pipe(plumber())
66+
.pipe(gulp.dest(paths.html.dest));
67+
});
68+
69+
gulp.task('stylesNlz', function() {
70+
return gulp.src(paths.stylesNlz.src).pipe(gulp.dest(paths.stylesNlz.dest));
71+
});
72+
73+
gulp.task('stylesBoot', function() {
74+
return gulp.src(paths.stylesBoot.src).pipe(gulp.dest(paths.stylesBoot.dest));
75+
});
76+
77+
gulp.task('images', function() {
78+
return gulp.src(paths.images.src).pipe(gulp.dest(paths.images.dest));
79+
});
80+
81+
gulp.task('scripts', function() {
82+
return gulp.src(paths.scripts.src).pipe(gulp.dest(paths.scripts.dest));
83+
});
84+
85+
gulp.task('fonts', function() {
86+
return gulp.src(paths.fonts.src).pipe(gulp.dest(paths.fonts.dest));
87+
});
88+
89+
gulp.task('serve', ['sass'], function() {
90+
browserSync.init({
91+
server: "src/"
92+
});
93+
//Слежение
94+
gulp.watch(paths.styles.watch, ['sass']);
95+
gulp.watch(paths.html.watch).on('change', browserSync.reload);
96+
gulp.watch(paths.images.src).on('change', browserSync.reload);
97+
});
98+
//Компилируем scss в css + автопрефиксер
99+
gulp.task('sass', function() {
100+
return gulp
101+
.src(paths.styles.src)
102+
.pipe(plumber())
103+
.pipe(sass().on('error', sass.logError))
104+
.pipe(autoprefixer({
105+
browsers: ['last 2 versions'],
106+
cascade: false
107+
}))
108+
.pipe(concatCss("main.css"))
109+
.pipe(gulp.dest('src/'))
110+
.pipe(browserSync.stream());
111+
});
112+
//Минимизируем css
113+
gulp.task('mincss', function() {
114+
return gulp
115+
.src('src/main.css')
116+
.pipe(plumber())
117+
.pipe(rename({suffix: ".min"}))
118+
.pipe(cleanCSS())
119+
.pipe(gulp.dest(paths.styles.dest));
120+
})
121+
//Минимизируем js
122+
gulp.task('minjs', function() {
123+
return gulp
124+
.src('src/scripts/main.js')
125+
.pipe(plumber())
126+
.pipe(rename({suffix: ".min"}))
127+
.pipe(uglify())
128+
.pipe(gulp.dest(paths.scripts.dest));
129+
})
130+
//Минимизируем svg
131+
gulp.task('minsvg', function() {
132+
return gulp
133+
.src('src/images/icons/check.svg')
134+
.pipe(plumber())
135+
.pipe(rename({suffix: ".min"}))
136+
.pipe(svgmin())
137+
.pipe(gulp.dest('dist/images/icons/'));
138+
})
139+
gulp.task('min',['mincss', 'minjs']);
140+
141+
//Запуск сборки
142+
gulp.task('build', ['clean', 'serve','html', 'stylesNlz', 'stylesBoot', 'minsvg', 'fonts', 'scripts', 'images', 'min']);
143+
//Запуск default
144+
gulp.task('default', ['build']);

0 commit comments

Comments
 (0)