Skip to content

Instantly share code, notes, and snippets.

View bmorrisondev's full-sized avatar

Brian Morrison II bmorrisondev

View GitHub Profile
import { graphql } from 'gatsby'
import React from 'react'
import { Helmet } from 'react-helmet'
import styled from 'styled-components'
export const pageQuery = graphql`
query PostById(
$id: String
) {
wpPost(id: {
@bmorrisondev
bmorrisondev / sqs-consumer.js
Last active November 11, 2021 16:42
A simple SQS setup in JavaScript
// npm install sqs-consumer
const { Consumer } = require('sqs-consumer')
const app = Consumer.create({
queueUrl: "SQS_URL",
handleMessage: async (message) => {
// Do stuff
}
});
import React, { useState, useEffect, useContext } from 'react'
import styled from 'styled-components'
import copy from "copy-to-clipboard";
import { GlobalContext } from '../../contexts/GlobalContext'
import Loading from "../../components/Loading"
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'
import Stat from '../../components/build/Stat'
import SubclassCard from '../../components/build/SubclassCard'
import ItemCard from '../../components/build/ItemCard'
import UpvoteButton from '../../components/build/UpvoteButton';
@bmorrisondev
bmorrisondev / index.js
Created September 4, 2021 23:00
Ocr stuffz
const axios = require('axios')
const fs = require('fs')
const { PDFImage } = require('pdf-image')
const { createWorker } = require('tesseract.js')
async function ocrStuffz(fileName) {
let pdfImage = new PDFImage(fileName, { combinedImage: true })
let convertedImage = await pdfImage.convertFile()
const worker = createWorker({
@bmorrisondev
bmorrisondev / DiscordLogger.js
Last active March 22, 2021 14:42
A class that streamlines logging from JavaScript to a Discord WebHook
// Usage:
// const DiscordLogger = require('./path/to/file.js')
// const logger = new DiscordLogger('my app name', 'https://discord.webhook/here');
// await logger.info('some message');
const axios = require('axios');
const COLORS = {
ERROR_RED: 16196387,
DEBUG_PURPLE: 12666618
@bmorrisondev
bmorrisondev / notion-sync.py
Created March 2, 2021 22:16
Sync Todoist Tasks to a Notion Database
from notion.client import NotionClient
import requests
import schedule
import time
from datetime import datetime
def get_todoist_tasks():
token = "todoist_token"
headers = {
@bmorrisondev
bmorrisondev / handler.js
Created August 18, 2020 20:14
Lambda Adapter w/Examples
const { adapter } = require('./lambdaAdapter')
exports.handler = async (event, context) => await adapter(event, context, options)
@bmorrisondev
bmorrisondev / Tail-File.ps1
Created April 14, 2020 13:40
A #powershell one liner that mimics `tail` in Linux #100daysofcode #developers
# -Tail grabs the previous N lines, -Wait will watch the file and log out the changes to the session.
Get-Content ./mylog.log -Tail 5 –Wait
@bmorrisondev
bmorrisondev / getDataUrl.js
Created April 2, 2020 16:23
You can use this function to get a base64 encoded version of a File object for uploading to an API. Works with await, or in a promise chain.
function getDataUrl(file) {
return new Promise((resolve, reject) => {
var reader = new FileReader();
reader.readAsDataURL(file);
reader.onload = () => resolve(reader.result);
reader.onerror = err => reject(err);
});
};
@bmorrisondev
bmorrisondev / docker-compose.yaml
Created April 2, 2020 13:31
Here is a docker-compose file that can be used to spin up an instance of #mongodb along with the mongo-express gui
# Source: https://hub.docker.com/_/mongo
# Use root/example as user/password credentials
version: '3.1'
services:
mongo:
image: mongo
restart: always
# You can uncomment this to set a password, but I use it locally with no auth for testing.