Skip to content

Instantly share code, notes, and snippets.

View david-j-davis's full-sized avatar
🏠
Working from home

David J. Davis david-j-davis

🏠
Working from home
View GitHub Profile
@david-j-davis
david-j-davis / README.md
Last active April 5, 2019 17:00
ES6 class for a roll-your-own jQuery

Roll your own lightweight, build-what-you-need jQuery with an ES6 Class.

@david-j-davis
david-j-davis / chat.js
Created July 26, 2019 20:18
Chat App Frontend with React-chat-window
import React from 'react'
import { Launcher } from 'react-chat-window'
import io from 'socket.io-client'
import config from '../../config.json'
import './form-chat-bot.scss'
import checkWorkingHours from '../utils/checkWorkingHours'
import handleFetch from '../utils/fetch'
const socketUrl = 'https://<your-app>.herokuapp.com'
let socket
@david-j-davis
david-j-davis / app.js
Created July 26, 2019 20:26
Node.js chat app to sms using socket.io and Twilio
const express = require('express')
const app = express()
const cors = require('cors')
const twilio = require('twilio')
const socketUtils = require('./utils/socketUtils')
const server = require('http').Server(app)
const io = require('socket.io')(server)
let socketStack = []
@david-j-davis
david-j-davis / App.vue
Created September 14, 2019 01:28
vue-chat-widget example frontend using websockets
<template>
<div id="app">
<Chat
iconColorProp="#e6e6e6"
messageOutColorProp="#4d9e93"
messageInColorProp="#f1f0f0"
messageBackgroundColorProp="#ffffff"
:messageListProp="messageList"
:initOpenProp="initOpen"
@onToggleOpen="handleToggleOpen"
@david-j-davis
david-j-davis / flattenArray.js
Created September 22, 2019 19:20
Flatten an array of arbitrarily nested arrays of integers into a flat array of integers. e.g. [[1,2,[3]],4] -> [1,2,3,4]
// Write some code, that will flatten an array of arbitrarily nested arrays of integers into a flat array of integers. e.g. [[1,2,[3]],4] -> [1,2,3,4].
function flattenArray(arr) {
if (!Array.isArray(arr)) {
return 'Please enter an array'
}
return arr.reduce((acc, val) => Array.isArray(val) ? acc.concat(flattenArray(val)) : acc.concat(val), [])
}
// console.log(flattenArray(4)) // will return 'Please enter an array'
@david-j-davis
david-j-davis / mac-setup-redis.md
Created October 21, 2022 17:19 — forked from tomysmile/mac-setup-redis.md
Brew install Redis on Mac

type below:

brew update
brew install redis

To have launchd start redis now and restart at login:

brew services start redis