Skip to content

Instantly share code, notes, and snippets.

View pablohpsilva's full-sized avatar
🏠
Working from home

PHPS pablohpsilva

🏠
Working from home
View GitHub Profile
/*
// Ideia de uso:
const fmongo = FunctionalMongo('mongodb://0.0.0.0:27017/yhub')
.collect('User')
.byId({ id })
*/
import { curry, objOf } from 'ramda'
@pablohpsilva
pablohpsilva / x-resources-example.js
Created April 15, 2018 13:49
An example using x-resources
//
// Create a resource file, for example: 'resources/user.js'.
// Create your resource-actions and export your custom resource
//
// File: resources/user.js
import { resources } from 'x-resources'
const baseURL = 'https://api.github.com'
@pablohpsilva
pablohpsilva / axios-resource.js
Last active March 21, 2018 19:37
Creating axios resources
import axios from "axios"
axios.defaults.headers.put['Content-Type'] = 'application/json';
axios.defaults.headers.post['Content-Type'] = 'application/json';
const getDefaultActions = () => ({
get: { method: 'GET' },
save: { method: 'POST' },
query: { method: 'GET' },
update: { method: 'PUT' },
remove: { method: 'DELETE' },
@pablohpsilva
pablohpsilva / import-specific-vs-import-deconstructor--example.js
Created November 5, 2017 20:59
import-specific-vs-import-deconstructor
// He said that importing like this:
import Comp1 from './dummy/Comp1'
// is faster than importing like this:
import { Comp1 } from './dummy'
@pablohpsilva
pablohpsilva / measure6-webpack.prod.conf.js
Created October 28, 2017 18:09
measure6-webpack.prod.conf.js
var
path = require('path'),
config = require('../config'),
cssUtils = require('./css-utils'),
glob = require('glob'),
webpack = require('webpack'),
merge = require('webpack-merge'),
baseWebpackConfig = require('./webpack.base.conf'),
ExtractTextPlugin = require('extract-text-webpack-plugin'),
HtmlWebpackPlugin = require('html-webpack-plugin'),
@pablohpsilva
pablohpsilva / measure5-index.html
Last active October 28, 2017 17:56
measure5-index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="format-detection" content="telephone=no">
<meta name="msapplication-tap-highlight" content="no">
<meta name="viewport" content="initial-scale=1, maximum-scale=5, minimum-scale=1, width=device-width">
<title>Quasar App</title>
<link rel="icon" href="statics/quasar-logo.png" type="image/x-icon">
@pablohpsilva
pablohpsilva / measure5-webpack.prod.conf.js
Created October 28, 2017 17:50
measure5-webpack.prod.conf.js
var
// ...
SWPrecacheWebpackPlugin = require('sw-precache-webpack-plugin'),
loadMinified = require('./load-minified'),
// ...
module.exports = merge(baseWebpackConfig, {
// ...
plugins: [
// ...
@pablohpsilva
pablohpsilva / service-worker-prod.js
Created October 28, 2017 17:47
service-worker-prod.js
(function() {
'use strict';
// Check to make sure service workers are supported in the current browser,
// and that the current page is accessed from a secure origin. Using a
// service worker from an insecure origin will trigger JS console errors.
const isLocalhost = Boolean(window.location.hostname === 'localhost' ||
// [::1] is the IPv6 localhost address.
window.location.hostname === '[::1]' ||
// 127.0.0.1/8 is considered localhost for IPv4.
@pablohpsilva
pablohpsilva / load-minified.js
Created October 28, 2017 17:45
load-minified.js
var fs = require('fs')
var UglifyJS = require('uglify-es')
module.exports = function(filePath) {
var code = fs.readFileSync(filePath, 'utf-8')
var result = UglifyJS.minify(code)
if (result.error) return ''
return result.code
}
@pablohpsilva
pablohpsilva / measure4-webpack.prod.conf.js
Created October 28, 2017 17:32
measure4-webpack.prod.conf.js
var
// ...
PreloadWebpackPlugin = require('preload-webpack-plugin'),
// ...
module.exports = merge(baseWebpackConfig, {
// ...
plugins: [
// ...
new PreloadWebpackPlugin({