Skip to content

Instantly share code, notes, and snippets.

Nate Murray jashmenn

View GitHub Profile
jashmenn / s3-upload-node.js
Created Mar 23, 2020
Simple example of uploading to S3 from the filesystem with Node.js - If you're trying to learn how to do this, checkout Fullstack Node.js
View s3-upload-node.js
const fs = require('fs')
const AWS = require('aws-sdk')
const { promisify } = require('util')
const s3 = new AWS.S3()
s3.uploadP = promisify(s3.upload)
const params = {
Bucket: 'fullstack-printshop',
Key: 'profile-photos/thedude.jpg',
Body: fs.createReadStream('thedude.jpg')
jashmenn / generatePath.js
Last active Mar 6, 2020
Deconstruction of the curves on @Wattenberger's Thinking in Hooks Post
View generatePath.js
// This code is from:
// It generates the SVG path for the curve between two lines on the post "Thinking in React Hooks", located here:
// It's a good idea to pull up the documentation on SVG paths here:
// As you may know, SVG paths are specified by a string where a
// letter is the "command" and the numbers following are the "arguments"
// We'll be using 4 commands:
jashmenn /
Created Sep 27, 2018
Use S3 as a url short-linker / redirection service
#!/bin/bash -x
if [[ $# -eq 0 ]] ; then
echo 'Usage: cmd <s3 path> <redirect-location>'
echo 'e.g.'
echo ''
exit 0
jashmenn / geth-and-remix.scpt
Created Nov 16, 2017
open geth and remix in tabs via applescript
View geth-and-remix.scpt
-- osascript services.scpt
tell application "iTerm 3"
set myterm to (create window with default profile)
tell myterm
set mysession to (current session)
tell mysession
set name to "geth"
write text "cd ~/projects/fs/newline/newline-content-internal/fullstack-web3/private-net"
write text "./bin/geth --datadir=./datadir --nodiscover --rpc --rpcapi \"db,personal,eth,net,web3,debug\" --rpccorsdomain='*' --rpcaddr=\"localhost\" --rpcport 8545 --ws --wsapi \"db,personal,eth,net,web3,debug\" --wsorigins='*' --wsaddr=\"localhost\" --wsport 8546 console"
View gist:9b45a4ecab360aefef84d9ebc6cf0495
Verifying my Blockstack ID is secured with the address 1EZ6kY8mCk1sPj4n1qbsZh6YFCRNsUaMy1
jashmenn / final-cut-it-out.js
Created Sep 21, 2017
Remove Silence from Final Cut Pro clips, automatically, using ffmpeg timecodes and OSX JavaScript Automation - Demo:
View final-cut-it-out.js
#!/usr/bin/env osascript -l JavaScript
* Delete silence from Final Cut Pro timeline using a script.
* Demo:
* This script accepts an ffmpeg silencedetect log as input.
* To setup, have fcp running along with your clip selected. Ensure that the
* timecode will start at zero before running this script. That is, if your clip
jashmenn / vending-machine-smart-contract.js
Last active Dec 27, 2017
Pseudocode for a vending machine "smart contract" in JavaScript
View vending-machine-smart-contract.js
* A pseudo VendingMachine "smart contract" in JavaScript
* See:
class VendingMachine {
constructor() {
this.price = 50; // 50 cents for any soda
this.balance = 0; // number of cents paid so far
this.selection = null; // name of selected drink
View genesis.json
"config": {
"chainId": 101,
"homesteadBlock": 0,
"eip155Block": 0,
"eip158Block": 0
"alloc" : {},
"coinbase" : "0x0000000000000000000000000000000000000000",

Example: You have a branch refactor that is quite different from master. You can't merge all of the commits, or even every hunk in any single commit or master will break, but you have made a lot of improvements there that you would like to bring over to master.

Note: This will not preserve the original change authors. Only use if necessary, or if you don't mind losing that information, or if you are only merging your own work.

On master:

> git co -b temp
jashmenn /
Created Mar 9, 2017 — forked from piscisaureus/
Checkout github pull requests locally

Locate the section for your github remote in the .git/config file. It looks like this:

[remote "origin"]
	fetch = +refs/heads/*:refs/remotes/origin/*
	url =

Now add the line fetch = +refs/pull/*/head:refs/remotes/origin/pr/* to this section. Obviously, change the github url to match your project's URL. It ends up looking like this:

You can’t perform that action at this time.