Skip to content

Commit 5910f25

Browse files
committed
setting browserify with gullp and request to api github ok
1 parent b630a9c commit 5910f25

File tree

8 files changed

+195
-30
lines changed

8 files changed

+195
-30
lines changed

.babelrc

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
"presets": ["es2015"]
3+
}

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
node_modules

js/githubusers.js renamed to dev/js/app.js

Lines changed: 5 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,48 +1,24 @@
1-
2-
const getData = (method, url) => {
3-
4-
return new Promise( (resolve, reject) => {
5-
6-
let xhr = new XMLHttpRequest();
7-
8-
xhr.open(method, url, true);
9-
10-
xhr.addEventListener('load', e => {
11-
12-
let response = {
13-
status: e.target.status,
14-
response: JSON.parse(e.target.response)
15-
};
16-
17-
resolve(response);
18-
});
19-
20-
xhr.addEventListener('error', e => {
21-
reject(e.target);
22-
});
23-
24-
xhr.send();
25-
});
26-
}
1+
import getDataFromApi from './getDataFromApi.js';
272

283
let message = document.getElementById('message-error'),
294
userGit = document.getElementById('userGit'),
305
search = document.getElementById('search');
316

32-
337
search.addEventListener('click', () => {
348

9+
console.log('hola');
10+
3511
let url = `https://api.github.com/users/${userGit.value}`;
3612

37-
getData('GET', url, true)
13+
getDataFromApi('GET', url, true)
3814
.then( resolve => {
3915
resolveRequest(resolve);
4016
})
4117
.catch( error => {
4218
console.log(error);
4319
})
4420

45-
getData('GET', `${url}/repos`)
21+
getDataFromApi('GET', `${url}/repos`)
4622
.then( resolve => {
4723
resolveRequest(resolve);
4824
})

dev/js/getDataFromApi.js

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
2+
const getDataFromApi = (method, url) => {
3+
4+
return new Promise( (resolve, reject) => {
5+
6+
let xhr = new XMLHttpRequest();
7+
8+
xhr.open(method, url, true);
9+
10+
xhr.addEventListener('load', e => {
11+
12+
let response = {
13+
status: e.target.status,
14+
response: JSON.parse(e.target.response)
15+
};
16+
17+
resolve(response);
18+
});
19+
20+
xhr.addEventListener('error', e => {
21+
reject(e.target);
22+
});
23+
24+
xhr.send();
25+
});
26+
}
27+
28+
module.exports = getDataFromApi;

gulpfile.babel.js

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
import gulp from 'gulp';
2+
import browserify from 'browserify';
3+
import browserSync from 'browser-sync';
4+
import sass from 'gulp-sass';
5+
import postcss from 'gulp-postcss';
6+
import cssnano from 'cssnano';
7+
import source from 'vinyl-source-stream';
8+
import babelify from 'babelify';
9+
import gutil from 'gulp-util';
10+
11+
const server = browserSync.create();
12+
13+
const postCSSPlugins = [
14+
cssnano({
15+
autoprefixer: {
16+
add: true
17+
}
18+
})
19+
];
20+
21+
gulp.task('es6', function() {
22+
browserify({ debug: true })
23+
.transform(babelify)
24+
.require(['./dev/js/app.js', './dev/js/getDataFromApi.js'], { entry: true })
25+
.bundle()
26+
.on('error',gutil.log)
27+
.pipe(source('bundle.js'))
28+
.pipe(gulp.dest('./public/js/'));
29+
});
30+
31+
32+
gulp.task('build', function() {
33+
gulp.start(['es6']);
34+
return;
35+
});
36+
37+
gulp.task('sass', () =>
38+
gulp.src('./dev/scss/styles.scss')
39+
.pipe(sass())
40+
.pipe(postcss(postCSSPlugins))
41+
.pipe(gulp.dest('./public/css'))
42+
.pipe(server.stream({match: '**/*.css'}))
43+
);
44+
45+
gulp.task('default', () => {
46+
server.init({
47+
server: {
48+
baseDir: './public',
49+
ignore: '.git'
50+
}
51+
});
52+
gulp.watch('./dev/js/*.js', ['es6', server.reload])
53+
gulp.watch('./dev/scss/**/*.scss', ['sass']);
54+
});

package.json

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
{
2+
"name": "users-github",
3+
"version": "1.0.0",
4+
"description": "",
5+
"main": "index.js",
6+
"scripts": {
7+
"prestart": "npm install",
8+
"test": "echo \"Error: no test specified\" && exit 1"
9+
},
10+
"keywords": [],
11+
"author": "Carlos Ruiz",
12+
"license": "MIT",
13+
"devDependencies": {
14+
"babel-core": "^6.25.0",
15+
"babel-preset-es2015": "^6.24.1",
16+
"babelify": "^7.3.0",
17+
"browser-sync": "^2.18.13",
18+
"browserify": "^14.4.0",
19+
"cssnano": "^3.10.0",
20+
"gulp": "^3.9.1",
21+
"gulp-postcss": "^7.0.0",
22+
"gulp-sass": "^3.1.0",
23+
"gulp-util": "^3.0.8",
24+
"vinyl-source-stream": "^1.1.0"
25+
}
26+
}

index.html renamed to public/index.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,6 @@
88
<input type="text" id="userGit" >
99
<button id="search" >Search</button>
1010
<div id="message-error"></div>
11-
<script type="text/javascript" src="js/githubusers.js"></script>
11+
<script type="text/javascript" src="js/bundle.js"></script>
1212
</body>
1313
</html>

public/js/bundle.js

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

0 commit comments

Comments
 (0)