Skip to content

Instantly share code, notes, and snippets.

@solace
solace / README.md
Last active July 27, 2023 12:40
Django: augmented user_passes_test to accept params for test_func with matching template tag
@solace
solace / deepgram2descript.sh
Last active January 1, 2023 01:56
DeepGram JSON to Descript transcript
# Warning: This is not a complete script.
# You may also need to edit the transcript text to fix speaker names
# and make minor corrections before importing into Descript.
cat deepgram.json | jq -r '
.results.channels[0].alternatives[0].paragraphs.paragraphs[]
| ("SPEAKER_" + (.speaker|tostring)) + ": "
+ ([.sentences[].text] | join(" "))' > transcript.txt
@solace
solace / bakesrt.sh
Last active July 17, 2022 00:38
Bake-in captions into videos using srts and ffmpeg
#!/bin/bash
# Check out STEAM Powered (https://steampoweredshow.com/) where I have conversations
# with women in STEAM to learn a bit about what they do and who they are.
# https://steampoweredshow.com/learn-more/
# Usage
# =====
#
# Execute script in the directory containing the video and srts files, or modify to take
@solace
solace / Component.stories.tsx
Created June 14, 2022 15:33
StorybookJS: Include line entry in Interactions tab that appears in Actions
// Don't do this. This is awful.
// Documenting it because it works, but stinks to hell.
Blah.play = async () => {
const actionListener = jest.fn();
// Listen for events that log to the Actions tab.
const channel = addons.getChannel();
channel.addListener("storybook/actions/action-event", actionListener);
@solace
solace / rule.js
Last active May 7, 2022 15:48 — forked from vktr/rule.js
Auth0 Rule: Add Stripe Customer Id to existing token data
// If you have multiple rules in your workflow that need to update token data.
function (user, context, callback) {
user.app_metadata = user.app_metadata || {};
const token_namespace = 'https://your-domain.com/app_metadata';
// assumes your metadata object is shallow
const addCustomerId = stripe_customer_id => ({
...context.idToken[token_namespace],
@solace
solace / edl2timeline.py
Last active April 5, 2022 08:25
Convert DaVinci Resolve marker edl to YouTube usable timeline
"""
Check out STEAM Powered (https://steampoweredshow.com/) where I have conversations
with women in STEAM to learn a bit about what they do and who they are.
https://www.steampoweredshow.com/learn-more
"""
from pprint import pprint
from collections import OrderedDict
import sys
import re
@solace
solace / post.js
Created March 18, 2022 06:16
Rendering Contentful embedded assets and entries in GatsbyJS
import { documentToReactComponents } from '@contentful/rich-text-react-renderer';
import { graphql } from 'gatsby';
import React from 'react';
// Custom renderer for embedded content which accepts `body` / `references` from the graphql query.
// Search `references` for the embedded object ID for full access to nested content.
const rendererOptions = (references) => ({
renderNode: {
[BLOCKS.EMBEDDED_ASSET]: (node) => {
const imageID = node.data.target.sys.id;
@solace
solace / plugins--gatsby-remark-cleaner--index.js
Last active October 20, 2021 12:43
gatsby remark transformer plugin that cleans up extraneous wrapper paragraph tags and table whitespace nodes that can raise errors/warnings.
const visit = require(`unist-util-visit`);
const remove = require(`unist-util-remove`);
const HTMLParser = require('node-html-parser');
const matches = (classes, value) => {
const fragment = HTMLParser.parse(value);
if (!fragment.firstChild.classList) {
return false;
}
@solace
solace / makesrt.py
Last active September 21, 2021 04:34
Google Cloud Speech-to-Text SRT Generator
"""
Check out STEAM Powered (https://steampoweredshow.com/) where I have conversations
with women in STEAM to learn a bit about what they do and who they are.
https://steampoweredshow.com/learn-more/
"""
"""
Requirements
************
@solace
solace / slurm.conf
Last active September 15, 2021 09:39
slurm.conf for 16.05.9-1+deb9u
###
# WARNING: This config is for development use only.
#
# It was created using https://slurm.schedmd.com/configurator.html and modified
# enough for use on Docker kaldiasr/kaldi with slurm 16.05.9-1+deb9u.
#
# slurm < 20.02.7 is no longer available due to a security vulnerability.
# See: https://www.schedmd.com/archives.php
# Get the latest version and use the configurator from there.
###