Skip to content

Instantly share code, notes, and snippets.

View christophemarois's full-sized avatar

Christophe Marois christophemarois

  • Doximity
  • Montreal
View GitHub Profile
@sdepold
sdepold / gist:1757695
Created February 7, 2012 06:34
hasMany + belongsTo in sequelize
var Sequelize = require("sequelize")
var sequelize = new Sequelize('database', 'root')
var User = sequelize.define('User', { username: Sequelize.STRING })
var Comment = sequelize.define('Comment', { text: Sequelize.TEXT })
User.hasMany(Comment)
Comment.belongsTo(User)
sequelize.sync({force: true}).success(function() {
@laughinghan
laughinghan / minimap.js
Created July 21, 2011 03:03
Minimap of a web page
javascript:
var minimap = document.body.cloneNode(true);
[].forEach.call(minimap.getElementsByTagName('a'), function(link) {
link.href = 'javascript:;';
});
minimap.style.position = 'fixed';
minimap.style.webkitTransform = 'scale(.1)';
document.body.appendChild(minimap);
minimap.style.top = minimap.offsetHeight*-.45+'px';
minimap.style.right = minimap.offsetWidth*-.45+'px';
@andrey-skl
andrey-skl / AppDelegate.m
Created November 16, 2016 14:36
How to enable logging in production build of React Native app
...
#import "RCTLog.h"
...
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
RCTSetLogThreshold(RCTLogLevelInfo);
...
@princejwesley
princejwesley / await-babel-repl.js
Last active January 9, 2021 09:20
REPL with standalone await + babel transform
const repl = require('repl');
const babel = require('babel-core');
function preprocess(input) {
const awaitMatcher = /^(?:\s*(?:(?:let|var|const)\s)?\s*([^=]+)=\s*|^\s*)(await\s[\s\S]*)/;
const asyncWrapper = (code, binder) => {
let assign = binder ? `global.${binder} = ` : '';
return `(function(){ async function _wrap() { return ${assign}${code} } return _wrap();})()`;
};
@zspecza
zspecza / stylus-best-practices.md
Last active May 27, 2021 05:25
Stylus Best Practices

Stylus Best Practices

Introduction

This is a curated set of conventions and best practices for Stylus, an expressive, dynamic, robust and advanced CSS preprocessor. Frustrated with there not being a set of conventions set in place (that could be easily found), I set forth to find out on my own.

@jscheel
jscheel / chrome-node-devtools-refresh.sh
Created November 18, 2016 18:35
Temporary hack to refresh the node inspector devtools without having to worry about the constantly-changing uuid. Only works in OSX. Use an iTerm2 trigger to run script automatically.
#!/bin/bash
######################################################################################
# regex for iterm2:
# chrome-devtools\:\/\/devtools\/remote\/serve\_file\/\@[a-f0-9]*\/inspector\.html\?experiments\=true\&v8only\=true\&ws\=localhost\:9229\/[0-9a-f]{8}-[0-9a-f]{4}-[4][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}
#
# command for iterm2:
# /path/to/script/chrome-devtools-refresh.sh "\0" [-h "example.com"]
######################################################################################
@chrishannah
chrishannah / iOS Icon Sizes.md
Last active February 15, 2022 23:43
A list containing all the icon names and sizes for iOS and watchOS.

iOS 12 Icon Sizes

(Taken from Xcode 10)

iPhone

iPhone Notification (iOS 7-12) 20pt

  • 2x - 40px
  • 3x - 60px
@viktorbezdek
viktorbezdek / jade_helper.md
Last active February 16, 2022 18:03
Jade - pass variable to base layout from extending template

layout.jade

doctype 5
html.no-js(lang='en')
block vars
head
  title #{title}
  meta(name='description', content='#{description}')
body
/* normal flexbox */
.flexbox .flex-container {
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: flex;
}
.flexbox .flex-container.vertical {
display: -webkit-flex;
display: -moz-flex;
@metrofun
metrofun / getBase64FromImage.js
Last active August 1, 2023 11:43
Script to convert image into base64, using xhr2 without canvas. Therefore it is possible to convert images from another domains, using CORS.
function getBase64FromImage(url, onSuccess, onError) {
var xhr = new XMLHttpRequest();
xhr.responseType = "arraybuffer";
xhr.open("GET", url);
xhr.onload = function () {
var base64, binary, bytes, mediaType;
bytes = new Uint8Array(xhr.response);