Skip to content

Instantly share code, notes, and snippets.

function translateError(msg) {
var newErr = new Error(msg); // placed here to get correct stack
return e => {
newErr.originalError = e;
throw newErr;
}
}
async function asyncTask() {
const user = await UserModel.findById(1).catch(translateError('No user found'))
@mjurincic
mjurincic / Secure Sessions Howto
Created January 22, 2019 13:33 — forked from nikmartin/A: Secure Sessions Howto
Secure sessions with Node.js, Connect, and Nginx as an SSL Proxy
Secure sessions are easy, but it's not very well documented, so I'm changing that.
Here's a recipe for secure sessions in Node.js when NginX is used as an SSL proxy:
The desired configuration for using NginX as an SSL proxy is to offload SSL processing
and to put a hardened web server in front of your Node.js application, like:
[NODE.JS APP] <- HTTP -> [NginX] <- HTTPS -> [CLIENT]
To do this, here's what you need to do:
@mjurincic
mjurincic / setup.sh
Created February 6, 2019 10:06 — forked from bradp/setup.sh
New Mac Setup Script
echo "Creating an SSH key for you..."
ssh-keygen -t rsa
echo "Please add this public key to Github \n"
echo "https://github.com/account/ssh \n"
read -p "Press [Enter] key after this..."
echo "Installing xcode-stuff"
xcode-select --install
@mjurincic
mjurincic / gitflow-breakdown.md
Created March 25, 2019 17:13 — forked from JamesMGreene/gitflow-breakdown.md
A comparison of using `git flow` commands versus raw `git` commands.

Initialize

gitflow git
git flow init git init
  git commit --allow-empty -m "Initial commit"
  git checkout -b develop master

Connect to the remote repository

@mjurincic
mjurincic / slick-a11y.js
Last active May 30, 2019 12:48
Slick slider acessability
/*
_ _ _ _
___| (_) ___| | __ (_)___
/ __| | |/ __| |/ / | / __|
\__ \ | | (__| < _ | \__ \
|___/_|_|\___|_|\_(_)/ |___/
|__/
Version: 1.6.0
Author: Ken Wheeler
@mjurincic
mjurincic / submodulewiki.md
Created September 2, 2019 11:53 — forked from iracooke/submodulewiki.md
Wiki as a submodule

From within the parent repo do

        git submodule add [email protected]:iracooke/transcriptomes.git/wiki wiki
        git commit -m "Adding wiki as submodule"
        git push

Making changes to the wiki and to the parent require separate git commit commands.

@mjurincic
mjurincic / nodejs-custom-es6-errors.md
Last active November 20, 2019 15:55 — forked from slavafomin/nodejs-custom-es6-errors.md
Custom ES6 errors in Node.js

Here's how you could create custom error classes in Node.js using latest ES6 / ES2015 syntax.

I've tried to make it as lean and unobtrusive as possible.

Defining our own base class for errors

errors/ApplicationError.js

@mjurincic
mjurincic / gist:c272503bc2c4b5cbe55dd82055448ca9
Created January 20, 2020 15:07
Geolocation autocomplete search API
google maps auyto complete
https://developers.google.com/maps/documentation/javascript/places-autocomplete
https://www.loqate.com/
https://smartystreets.com/
@mjurincic
mjurincic / SQLCache.js
Created January 23, 2020 20:31 — forked from cvburgess/SQLCache.js
Knex - caching and batching
const { InMemoryLRUCache } = require("apollo-server-caching");
const DataLoader = require("dataloader");
class SQLCache {
constructor(cache = new InMemoryLRUCache(), knex) {
this.cache = cache;
this.loader = new DataLoader(queries =>
Promise.all(queries.map(query => knexInstance.raw(query)))
);
}
@mjurincic
mjurincic / sitemap.xml.tsx
Created March 18, 2020 11:48 — forked from henninghall/sitemap.xml.tsx
sitemap.xml in next.js which is easy to extend with dynamic routes
// place in pages/sitemap.xml.tsx
const fs = require('fs')
import { endpoint } from '../config'
const Sitemap = () => null
Sitemap.getInitialProps = async ({ res }) => {
if (!res) return {}
const folder = 'pages'
res.setHeader('content-type', 'application/xml')