Skip to content

Instantly share code, notes, and snippets.

View mikebarnhardt's full-sized avatar

Mike Barnhardt mikebarnhardt

  • 次元の狭間
View GitHub Profile
@mikebarnhardt
mikebarnhardt / site.conf
Created January 22, 2016 16:34
Service Script for Node Apps
description "Site Name"
author "Your Name"
# Start service after everything loaded
start on (local-filesystems and net-device-up IFACE=eth0)
stop on shutdown
# Automatically restart service
respawn
respawn limit 3 15
@mikebarnhardt
mikebarnhardt / default.conf
Created January 22, 2016 16:41
Basic Nginx Config
server {
listen 80;
# Your server's IP
server_name 11.222.33.44;
# Uncomment to enable:
# access_log /var/log/nginx/log/host.access.log main;
location / {
@mikebarnhardt
mikebarnhardt / node-startup.service
Last active September 20, 2016 19:14
Systemd NodeJS startup
[Unit]
Description=NodeJS Startup
After=network.target
[Service]
ExecStart=/usr/bin/nodejs /var/www/repo/build/server
Environment=NODE_ENV=production
User=nodejs
Restart=on-failure
@mikebarnhardt
mikebarnhardt / rename-github-branch.md
Created January 2, 2018 14:30
Rename local and remote Github branch
  1. Rename your local branch. If you are on the branch you want to rename:
git branch -m new-name

If you are on a different branch:

@mikebarnhardt
mikebarnhardt / www-permissions.md
Created January 2, 2018 14:39
Give www folder to group permissions.

Add your Node user. If Apache or something else this could be www-data.

sudo adduser nodejs

Add users to that group to allow access to the www directory.

sudo usermod -aG nodejs <username>
@mikebarnhardt
mikebarnhardt / shuffle.js
Created January 16, 2018 14:06
Fisher-Yates Shuffle
// Taken from https://bost.ocks.org/mike/shuffle/
function shuffle(array) {
var m = array.length, t, i;
// While there remain elements to shuffle…
while (m) {
// Pick a remaining element…
i = Math.floor(Math.random() * m--);
@mikebarnhardt
mikebarnhardt / treeify.js
Created January 16, 2018 14:08
Hierarchy tree from flat list
// Taken from https://stackoverflow.com/questions/22367711/construct-hierarchy-tree-from-flat-list-with-parent-field
function treeify(list, idAttr, parentAttr, childrenAttr) {
if (!idAttr) idAttr = 'id';
if (!parentAttr) parentAttr = 'parent';
if (!childrenAttr) childrenAttr = 'children';
var treeList = [];
var lookup = {};
list.forEach(function(obj) {
lookup[obj[idAttr]] = obj;
@mikebarnhardt
mikebarnhardt / render.js
Created January 16, 2018 14:10
PDF.js with text selection
// Taken from https://stackoverflow.com/questions/33063213/pdf-js-with-text-selection
PDFJS.getDocument('file.pdf').then(function(pdf){
var page_num = 1;
pdf.getPage(page_num).then(function(page){
var scale = 1.5;
var viewport = page.getViewport(scale);
var canvas = $('#the-canvas')[0];
var context = canvas.getContext('2d');
canvas.height = viewport.height;
canvas.width = viewport.width;
@mikebarnhardt
mikebarnhardt / add-key-to-server.md
Created February 7, 2018 15:51
Generate and Add SSH Key to a Server

macOS

Generate a key if needed:

ssh-keygen -t rsa

It should now be located in: ~/.ssh/ as id_rsa and id_rsa.pub.

@mikebarnhardt
mikebarnhardt / git-track-case.txt
Last active January 31, 2022 14:31
Force Git to track case changes in filenames.
git config --unset-all core.ignorecase && git config --system core.ignorecase false