Skip to content

Instantly share code, notes, and snippets.

View davidpelayo's full-sized avatar
✌️

David Pelayo davidpelayo

✌️
View GitHub Profile
@davidpelayo
davidpelayo / GithubClient.groovy
Last active September 22, 2015 08:03 — forked from joshareed/GithubClient.groovy
Fetch list of issues from Github and draft an email
//#!/usr/bin/env groovy
import groovy.json.JsonSlurper
import java.text.SimpleDateFormat
// fetches a Github API URL and parses the result as JSON
def fetch(addr, params = [:]) {
def auth = "<personal api token>"
def json = new JsonSlurper()
return json.parse(addr.toURL().newReader(requestProperties: ["Authorization": "token ${auth}".toString(), "Accept": "application/json"]))
@davidpelayo
davidpelayo / GithubClient.groovy
Last active September 22, 2015 08:52
Simple Github API client using Groovy RESTClient
/**
* Simple Github API client that supports basic auth.
*/
class GithubClient {
String username
String password
String owner
String repository
String fetchFileContents(String filePath) {
@davidpelayo
davidpelayo / jobsGeneratorGivenForks.groovy
Last active September 22, 2015 08:55
Jobs generator based on forks of a certain github repo
//thanks to https://gist.github.com/joshareed/5706061
import groovy.json.JsonSlurper
def owner = "<owner>"
def project = "<project>"
// curl -k -u <user>:<token> -X GET https://api.github.com/repos/<owner>/<repo>/forks > forks.txt
def fetch(addr, params = [:]) {
@davidpelayo
davidpelayo / git-delete-merged-script.sh
Created June 12, 2017 14:59
Delete local and remote branches which have been merged with your current base branch, avoiding to delete master and a branch name
#!/bin/bash
#
# With execute permissions of this bash file.
# Checkout on master branch
# Replace <custom_branch> by the branch you want to avoid to be removed (in case any) - for instance: development / staging
# Run:
# - ./git-delete-merged-script.sh -h --- print help
# - ./git-delete-merged-script.sh -r origin --- to delete remote branches based on remote: origin
# - ./git-delete-merged-script.sh -l origin --- to delete local branches based on remote: origin
@davidpelayo
davidpelayo / git-delete-merged-script.sh
Created June 12, 2017 14:59
Delete local and remote branches which have been merged with your current base branch, avoiding to delete master and a branch name
#!/bin/bash
#
# With execute permissions of this bash file.
# Checkout on master branch
# Replace <custom_branch> by the branch you want to avoid to be removed (in case any) - for instance: development / staging
# Run:
# - ./git-delete-merged-script.sh -h --- print help
# - ./git-delete-merged-script.sh -r origin --- to delete remote branches based on remote: origin
# - ./git-delete-merged-script.sh -l origin --- to delete local branches based on remote: origin
@davidpelayo
davidpelayo / github-pr-toggle-files-bookmarklet.js
Created May 28, 2018 15:49
Toggle all files details within a PR
javascript:(function(){var files = document.querySelectorAll('.js-details-target'); for(var i = 0; i<files.length; i++) {files[i].click();}})();
@davidpelayo
davidpelayo / zapier-http-digest-multipart-async-example.js
Created August 5, 2020 14:50
Zapier Node/JS step performing HTTP Digest Auth + Multipart/form-data example
// Kudos for this repo: https://github.com/simme/node-http-digest-client
// Original `node-http-digest-client` license: Copyright (c) 2012, Simon Ljungberg <hi@iamsim.me>
// Adapted by @ddpelayo / github.com/davidpelayo / davidpelayo.com - to Modern Javascript
const HTTPDigest = function () {
const crypto = require('crypto');
let http = require('http');
const HTTPDigest = function (username, password, https) {
this.nc = 0;
this.username = username;
@davidpelayo
davidpelayo / README.md
Last active March 8, 2022 13:32
Remote Browser Debugging with VSCode

How to remotely debug your React Application + Webpack from VSCode

  1. Set up your .vscode/launch.json file with the code given above. Note that the code is approximate - your project's might differ.
  2. Run your development server - in my case, with Webpack Dev Server, via a npm script such as npm start.
  3. Set a breakpoint in your main JS/JSX module.
  4. Switch to the Run & Debug in VSCode - usually second option of the VS Code left side bar.
  5. Run the Debug in Chrome Canary task.

Useful Resources

@davidpelayo
davidpelayo / what forces layout-reflow.md
Last active March 14, 2022 16:44
What forces layout-reflow

What forces layout / reflow

All of the below properties or methods, when requested/called in JavaScript, will trigger the browser to synchronously calculate the style and layout. This is also called reflow or layout thrashing, and is common performance bottleneck.

Element

Box metrics
  • elem.offsetLeft, elem.offsetTop, elem.offsetWidth, elem.offsetHeight, elem.offsetParent
  • elem.clientLeft, elem.clientTop, elem.clientWidth, elem.clientHeight
  • elem.getClientRects(), elem.getBoundingClientRect()
ECPEV - PSP - C
SUMAR PER TRANSFORMAR
VALENTIA PER TRANSFORMAR I TRANSFORMAR AMB SENTI COMÚ