- Error Tracking https://sentry.io
- Error Tracking https://logrocket.com
- Localisation https://crowdin.com
- Localisation https://poeditor.com
- Auth https://auth0.com
- Continuous Integration https://travis-ci.org/
- E2E Testing https://www.cypress.io
- Cross Browser Testing https://www.browserstack.com
- Code Coverage https://codecov.io
- Serverless https://zeit.co/
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
javascript: void ((async () => { | |
/* More bookmarklets at https://gist.github.com/iamandrewluca/61feacf07bc4f2f50e70f986c2e9b2d2 */ | |
let interval = 500; | |
const intervalId = setInterval(() => { | |
interval += 500; | |
if (interval > 5000) { return; } | |
if (window.speechSynthesis.getVoices().length !== 0) { | |
clearInterval(intervalId); |
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
javascript: ((s) => { | |
"use strict"; | |
if (s === atob("JXM=")) s = prompt(); | |
/** | |
* More bookmarklets at | |
* https://gist.github.com/iamandrewluca/61feacf07bc4f2f50e70f986c2e9b2d2 | |
* When used as a browser search engine `s` will be what user typed in address bar | |
*/ | |
const script = document.createElement("script"); |
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
<?php | |
/** | |
* categories | |
* | |
* \TYPO3\CMS\Extbase\Persistence\ObjectStorage<\TYPO3\CMS\Extbase\Domain\Model\Category> | |
* @lazy | |
*/ | |
protected $categories; | |
/** | |
* MyModel constructor. |
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
{ | |
"$schema": "https://raw.githubusercontent.com/jsonresume/resume-schema/v1.0.0/schema.json", | |
"meta": { | |
"version": "1.0.0", | |
"lastModified": "2022-04-23", | |
"canonical": "https://raw.githubusercontent.com/iamandrewluca/jsonresume/main/resume.json" | |
}, | |
"basics": { | |
"name": "Andrew Luca", | |
"email": "iamandrewluca@gmail.com", |
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
let unit = `5" x 5' x 1-3/16"` | |
unit.split('x') | |
.map((v) => v.trim()) | |
.map((v) => ({ value: removeUnit(v), unit: getUnit(v) })) | |
.map(({ unit, value }) => ({ unit, value: value.split('-') })) | |
.map(({ unit, value: [whole, fraction] }) => ({ unit, whole, fraction: splitFraction(fraction) })) | |
.map(({ unit, whole, fraction }) => ({ unit, value: parseInt(whole) + divideTuple(fraction) })) | |
.map(o => convertToInch(o)) | |
.reduce((product, o) => product * o.value, 1) |
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 { AdminUserRole } from 'gto-patterns' | |
/** | |
* A string combined of resource and method separated by a colon `:` e.g. 'user:get' | |
* Desired to keep resource as a singular word | |
* Nested resources can be separated by a slash `/` e.g. 'user/account-type:edit' | |
* A resource can contain one of owned fields separated by `@` e.g. 'user@registrationDate:get' | |
* Default methods are list, get, create, update, delete (https://cloud.google.com/apis/design/standard_methods) | |
* Custom methods can be added e.g. block, import, assign, generate | |
* These rules are invented, if anyone has a better idea how to categorize actions, please suggest. |
Create alias manually in ~/.gitconfig
file (recommened):
[alias]
gone = "!f() { git fetch --all --prune; git branch -vv | awk '/: gone]/{print $1}' | xargs git branch -D; }; f"
Create alias (problematic):