Skip to content

Instantly share code, notes, and snippets.

View Tymek's full-sized avatar

Tymoteusz Czech Tymek

View GitHub Profile
@Tymek
Tymek / rule.js
Last active December 28, 2019 20:38
Auth0 rule for JWT Hasura roles
function (user, context, callback) {
// console.log('context', context);
const namespace = "https://hasura.io/jwt/claims";
const roles = (context.authorization || {}).roles || [];
const claims = {
'x-hasura-default-role': 'user',
'x-hasura-allowed-roles': [
'anonymous',
'user',
@Tymek
Tymek / machine.js
Last active May 21, 2020 21:53
Generated by XState Viz: https://xstate.js.org/viz
// Available variables:
// - Machine
// - interpret
// - assign
// - send
// - sendParent
// - spawn
// - raise
// - actions
@Tymek
Tymek / tricky-but-important.js
Created July 27, 2020 16:20
tricky-but-important.js
typeof (() => { return })()
@Tymek
Tymek / magnus.tsx
Created November 6, 2020 09:20
Magnus tsx but prettier
import * as React from "react";
import { StyleSheet, SafeAreaView } from "react-native";
import {
Div,
ThemeProvider,
Text,
Button,
Input,
Icon,
Image,
@Tymek
Tymek / sortImagesByAspectRatio.py
Last active January 27, 2021 23:04
Sort images by aspect ratio with Python and exiftool
#!/usr/bin/env python3
import sys
import os
import glob
import subprocess
import multiprocessing as mp
import subprocess
# change this
inputDir = "./input"
@Tymek
Tymek / headless-pi.sh
Last active March 8, 2021 20:21
Headless Raspbian setup – WiFi and SSH
#!/bin/bash
clear
echo ""
echo -e "\e[44mHEADLESS RASPBIAN\e[0m"
echo "WiFi & SSH setup"
echo ""
echo "Available partitions:"
lsblk -e7
echo ""
@Tymek
Tymek / useNavigationLock.ts
Last active May 25, 2023 22:38
Next.js block navigation on unsaved changes
import { useEffect, useState } from 'react';
import { useRouter } from 'next/router';
/** Ask for confirmation before changing page or leaving site.
*
* @see https://git.io/JOskG
*/
const useNavigationLock = (
isEnabled = true,
warningText = 'You have unsaved changes – are you sure you wish to leave this page?',
@Tymek
Tymek / vercel.json
Created April 16, 2021 07:46
Vercel Opt-out from Google's FLoC Network
{
"headers": [
{
"source": "/(.*)",
"headers": [
{
"key": "Permissions-Policy",
"value": "interest-cohort=()"
}
]
import { compile } from 'svelte/compiler'
/**
* @returns {import('vite').Plugin}
*/
const vitePluginSvelteDocs = () => {
const virtualModuleId = '@virtual:svelte-docs'
return {
name: 'vite-plugin-svelte-docs',
@Tymek
Tymek / seed.ts
Last active May 25, 2022 08:45
Unleash features - seed db
const readline = require("readline");
const { default: faker } = require("@faker-js/faker");
require("isomorphic-fetch");
const API_URL = "http://localhost:4242/api/admin/projects/default/features";
const API_KEY = "<YOUR_ADMIN_TOKEN>";
const pastDate = (min = 0) => new Date(Date.now() - 1000 * 60 * min);
const FgGreen = "\x1b[32m";