Skip to content

Instantly share code, notes, and snippets.

View time-machine.md

The problem

Time Machine will backup your files. For a developer, and having loads of node_modules and vendor directories for projects, this is huge time suck and waste since those can be brought back with npm, yarn, composer, etc.

The solution

Directories can be excluded from Time Machine using the cli.

Adding exclusions

First, verify that you can get a list of directories that you want to exclude:

cd "$HOME/code" && find $(pwd) -maxdepth 3 -type d \( -name vendor -o -name node_modules \)
View live-templates.md

Live Templates

Component boilerplate

Uses file name to generate component.

Template text:

import React, {Fragment} from 'react'
View laravel-db.php
<?php
interface DBTransaction {
public function begin();
public function commit();
public function rollback();
}
class LaravelDBTransaction implements DBTransaction {
public function begin()
View example-test.jsx
import {render as rtlRender} from 'react-testing-library'
function render ({foo = 'defaultFoo', doSomething = jest.fn()} = {}) {
const result = rtlRender(<MyComponent foo={foo} doSomething={doSomething} />)
return {
...result,
doSomething,
clickButton: () => fireEvent.click(result.querySelector('button'))
}
}
View hook-example.jsx
function Profile ({userId}) {
const [profile, setProfile] = useState(null)
useEffect(() => {
fetch(`/api/users/${userId}`)
.then(res => {
setProfile(res.json().profile)
})
}, [userId]) // run when it has new userId
return (
<div>{profile && profile.full_name}</div>
View .profile
parse_git_branch() {
git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/ (\1)/'
}
export PS1="> \W\[\033[32m\]\$(parse_git_branch)\[\033[00m\] $ "
View Tabs.jsx
import React from 'react'
import { Route, Link } from 'react-router-dom'
const TabLink = ({ to, exact, title }) => (
<Route path={to} exact={exact} children={({ match }) => (
<li className={`nav-item ${match ? 'active' : ''}`}>
<Link to={to} className='nav-link' role='tab'>{title}</Link>
</li>
)} />
)
View Container.js
class Container {
constructor () {
this._definitions = {}
}
register (id, func, factory = false) {
if (typeof func !== 'function') {
throw new Error('Invalid service function.')
}
this._definitions[id] = {
View main.yml
---
- name: Define release name.
set_fact: app_project_release={{ lookup('pipe', 'date +%Y%m%d%H%M%S') }}
- name: Set current release directory.
set_fact: app_current_release_dir={{app_project_root}}/releases/{{app_project_release}}
- name: Set shared directory.
set_fact: app_shared_dir={{app_project_root}}/shared
View DoctrineServiceProvider.php
<?php
use Doctrine\ORM\EntityManager;
use Doctrine\ORM\Mapping\Driver\SimplifiedYamlDriver;
use Doctrine\ORM\Tools\Setup;
use Silex\Application;
use Silex\ServiceProviderInterface;
class DoctrineServiceProvider implements ServiceProviderInterface