Skip to content

Instantly share code, notes, and snippets.

View jasonsturges's full-sized avatar

Jason Sturges jasonsturges

View GitHub Profile
@jasonsturges
jasonsturges / Command line
Last active August 31, 2022 02:50
Wiki.js
$ docker-compose up
Creating network "docker_default" with the default driver
Creating docker_wikidb_1 ... done
Creating docker_wikijs_1 ... done
Attaching to docker_wikidb_1, docker_wikijs_1
wikidb_1 | 2018-06-22T04:28:15.063+0000 I CONTROL [initandlisten] MongoDB starting : pid=1 port=27017 dbpath=/data/db 64-bit host=468ee589b69d
wikidb_1 | 2018-06-22T04:28:15.063+0000 I CONTROL [initandlisten] db version v3.6.5
wikidb_1 | 2018-06-22T04:28:15.063+0000 I CONTROL [initandlisten] git version: a20ecd3e3a174162052ff99913bc2ca9a839d618
wikidb_1 | 2018-06-22T04:28:15.064+0000 I CONTROL [initandlisten] OpenSSL version: OpenSSL 1.0.1t 3 May 2016
wikidb_1 | 2018-06-22T04:28:15.064+0000 I CONTROL [initandlisten] allocator: tcmalloc
@jasonsturges
jasonsturges / .gitignore
Created July 16, 2020 03:29
Unity git ignore
# This .gitignore file should be placed at the root of your Unity project directory
#
# Get latest from https://github.com/github/gitignore/blob/master/Unity.gitignore
#
/[Ll]ibrary/
/[Tt]emp/
/[Oo]bj/
/[Bb]uild/
/[Bb]uilds/
/[Ll]ogs/
@jasonsturges
jasonsturges / Math.log10.js
Last active August 25, 2020 06:03
Math.log10
Math.log10(n);
// Equivalent polyfill:
Math.log(n) * Math.LOG10E
@jasonsturges
jasonsturges / benchmark.js
Created August 25, 2020 06:56
Benchmarking JavaScript - Setting up a timer
let iterations = 100000;
let startTime = new Date().getTime();
for (let i = 0; i < iterations; i++)
Math.log10(0)
let endTime = new Date().getTime();
let time = endTime - startTime;
console.info(`time: ${time}ms, op: ${time / iterations}ms`);
@jasonsturges
jasonsturges / benchmark.js
Created August 26, 2020 06:31
Benchmarking JavaScript - Tuning execution time
const runTest = (iterations = 100000000) => {
let startTime = new Date().getTime();
for (let i = 0; i < iterations; i++)
Math.log10(0)
let endTime = new Date().getTime();
let totalTime = endTime - startTime;
let fnTime = (totalTime / iterations).toFixed(10);
let operations = Math.floor(1000 / totalTime * iterations);
@jasonsturges
jasonsturges / benchmark.js
Created August 26, 2020 06:51
Benchmarking JavaScript - Asynchronous execution
const runTest = (iterations = 100000000) => {
let startTime = new Date().getTime();
for (let i = 0; i < iterations; i++)
Math.log10(0)
let endTime = new Date().getTime();
let totalTime = endTime - startTime;
let fnTime = (totalTime / iterations).toFixed(10);
let operations = Math.floor(1000 / totalTime * iterations);
@jasonsturges
jasonsturges / benchmark.js
Created August 26, 2020 07:20
Benchmarking JavaScript - Baseline time
const runBaseline = (iterations = 100000000) => {
let startTime = new Date().getTime();
for (let i = 0; i < iterations; i++) {
// no operation
}
let endTime = new Date().getTime();
return endTime - startTime;
}
const runTest = (iterations = 100000000) => {
@jasonsturges
jasonsturges / performanceNow.js
Created November 22, 2020 02:10
High Resolution Time Stamp
const t0 = performance.now();
Math.log10(n)
const t1 = performance.now();
console.log(`Call took ${t1 - t0} milliseconds.`);
@jasonsturges
jasonsturges / main.dev.js
Last active November 30, 2020 05:10
Electron Multiple Windows
const windows = new Set();
export const createWindow = async () => {
if (
process.env.NODE_ENV === 'development' ||
process.env.DEBUG_PROD === 'true'
) {
await installExtensions();
}
@jasonsturges
jasonsturges / App.svelte
Created December 11, 2020 04:16
3D with Svelte and Three.js
<script>
import { onMount } from 'svelte';
import { createScene } from "./scene";
let el;
onMount(() => {
createScene(el)
});
</script>