Skip to content

Instantly share code, notes, and snippets.

View akhoury's full-sized avatar
🏠
Working from home

Aziz Khoury akhoury

🏠
Working from home
View GitHub Profile
(function () {
// By joseph khoury
let context = new AudioContext();
let sound = context.createOscillator();
sound.type = "sine";
sound.connect(context.destination);
sound.frequency.value = 200;
sound.start();
let ison = true;
/*
// from bootstrap/scss/_variables.scss
$grid-breakpoints: (
xs: 0,
sm: 576px,
md: 768px,
lg: 992px,
xl: 1200px
) !default;
@akhoury
akhoury / check-promise.js
Last active April 10, 2019 14:31
How to test if an object is promise in the real world
// you must install the 3 modules for this to work
// npm install bluebird q when
// so the gist here, no pun intended, is that when you're testing for a Promise, it's totally fine
// to either check if the object is instanceof Promise or even if Promise.resolve(object) == object
// UNLESS there is a chance that this promise is returned from a third party promise library, or even
// if you have plugins or some other modules using your module,
// ... so, if you don't know which "Promise" constructor could be getting,
@akhoury
akhoury / Atmo-fw-update-nrf.md
Created December 2, 2018 09:27
Atmotube firmware update tutorial (nRF Toolbox)

Atmotube firmware update tutorial (nRF Toolbox)

  1. Download firmware (70.03.0A) to the internal smartphone memory or SD card;
  2. Install nRF Toolbox for BLE from Google Play;
  3. Open nRF Toolbox → go to DFU section;
  4. Select firmware file → chose "application" type with "no init packet";
  5. Select device for firmware upload (named "DfuMode");
  6. Tap "Start".
@akhoury
akhoury / migrate.sh
Created December 29, 2017 19:42 — forked from pepijnblom/migrate.sh
Upgrade MAMP to Mysql 5.7
#!/bin/sh
wget http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.20-macos10.12-x86_64.tar.gz
tar xfvz mysql-5.7*
echo "stopping mamp"
sudo /Applications/MAMP/bin/stop.sh
sudo killall httpd mysqld
echo "creating backup"
// tested with NodeBB v1.4.6+
var path = require('path');
var url = require('url');
var nconf = require('nconf');
var async = require('async');
var pkg = require('./package.json');
nconf.file({ file: path.join(__dirname, './config.json') });
// tested with NodeBB v1.4.6+
var path = require('path');
var nconf = require('nconf');
var async = require('async');
var pkg = require('./package.json');
nconf.file({ file: path.join(__dirname, './config.json') });
var path = require('path');
var nconf = require('nconf');
var async = require('async');
var url = require('url');
var _convert = require('./node_modules/nodebb-plugin-import/node_modules/bbcode-to-markdown');
nconf.file({ file: path.join(__dirname, './config.json') });
var dbType = nconf.get('database');
@akhoury
akhoury / nbb-fix-topic-viewcount.js
Created March 10, 2017 01:06
to set lithium's negative viewcount to 0
var path = require('path');
var nconf = require('nconf');
var async = require('async');
nconf.file({ file: path.join(__dirname, './config.json') });
var dbType = nconf.get('database');
var productionDbConfig = nconf.get(dbType);
nconf.set(dbType, productionDbConfig);
@akhoury
akhoury / promiseWhile.js
Last active August 19, 2016 20:21
promiseWhile()
function promiseWhile (condition, execute) {
return new Promise(function(resolve, reject) {
var iterate = function () {
if (condition()) {
return execute()
.then(iterate)
.catch(reject);
}
return resolve();