- Homebrew/terminal/bash
- OSX Productivity - Window Management/Quick Launcher/Hyperswitch
- OSX Settings - Dock/Finder
- Web Browser - Extensions - AdBlock, Privacy Badger, OneTab, JSONViewer, Stylus, Vue Devtools, React Devtools
- Node.js - nvm
- Code Editor - vs code
- Code Editor Extensions
- Break timer and Flux
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
echo '.env' >> .gitignore | |
git rm -r --cached .env | |
git add .gitignore | |
git commit -m 'untracking .env' | |
git push origin master |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
xcode-select --install | |
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" | |
brew update | |
brew cask install iterm2 | |
# update iterm2 settings -> colors, keep directory open new shell, keyboard shortcuts | |
brew install bash # latest version of bash | |
# set brew bash as default shell | |
sudo nano /etc/shells | |
# add /usr/local/bin/bash to the accepted list of shells | |
chsh -s /usr/local/bin/bash |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import { useState } from "react"; | |
export function useLocalStorage<T>(key: string, initialValue: T): [T, (s: T) => void] { | |
// State to store our value | |
// Pass initial state function to useState so logic is only executed once | |
const [storedValue, setStoredValue] = useState<T>(() => { | |
try { | |
// Get from local storage by key | |
const item = window.localStorage.getItem(key); | |
// Parse stored json or if none return initialValue |