Skip to content

Instantly share code, notes, and snippets.

View izakfilmalter's full-sized avatar
Building the kingdom.

Izak Filmalter izakfilmalter

Building the kingdom.
View GitHub Profile
@izakfilmalter
izakfilmalter / useFilterQuery.tsx
Last active May 10, 2025 08:24
Zero + bazza/ui filters
import type { FiltersState } from '@/components/data-table-filter/core/types'
import { filtersSchema } from '@/components/data-table-filter/core/types'
import type { FilterKeys } from '@/data/globalState'
import { noOp } from '@/shared/things'
import { useZero } from '@/shared/zero/useZero'
import type { ZSchema } from '@/shared/zero/zeroSchema.mjs'
import { escapeLike, type Query, type TTL } from '@rocicorp/zero'
import { useQuery } from '@rocicorp/zero/react'
import { getTime } from 'date-fns/fp'
import { Array, Boolean, Option, pipe, String } from 'effect'
@izakfilmalter
izakfilmalter / oom.sh
Created December 23, 2024 02:58
Temporal OOM
2024-12-23T02:57:17.061Z [ERROR] Workflow Worker Thread failed: Error [ERR_WORKER_OUT_OF_MEMORY]: Worker terminated due to reaching memory limit: JS heap out of memory {
sdkComponent: 'worker',
taskQueue: 'Main',
code: 'ERR_WORKER_OUT_OF_MEMORY'
}
2024-12-23T02:57:17.061Z [INFO] Worker state changed { sdkComponent: 'worker', taskQueue: 'Main', state: 'STOPPING' }
2024-12-23T02:57:17.062Z [ERROR] An unexpected error occured while processing Workflow Activation. Initiating Worker shutdown. {
sdkComponent: 'worker',
taskQueue: 'Main',
runId: '63e97f3f-b943-4add-91b3-6cfef5a257ce',
export type ADTMember<ADT, Key extends string, Type extends string> = Extract<
ADT,
/* eslint-disable @typescript-eslint/consistent-indexed-object-style */
{ [k in Key]: Type }
>
type Matchers<Key extends string, ADT extends { [k in Key]: string }, Out> = {
[D in ADT[Key]]: (v: ADTMember<ADT, Key, D>) => Out
}
@izakfilmalter
izakfilmalter / multi-region-rds.ts
Created October 4, 2024 17:46
Multi region rds
// Config values
const primaryRegion = "us-east-1";
const replicaRegion = "us-west-2";
const dbName = "exampledb";
const dbUser = "exampleuser";
const dbPassword = "examplepassword";
// VPC Configs for primary and replica regions
const primaryVpcId = "vpc-id-in-primary-region"; // Replace with your VPC ID
const replicaVpcId = "vpc-id-in-replica-region"; // Replace with your VPC ID
@izakfilmalter
izakfilmalter / chamferBit.tsx
Last active March 29, 2024 14:54
Clerk org slug subdomain
'use client'
import type { FC } from 'react'
import { useEffect } from 'react'
import { useRouter } from 'next/navigation'
import { useClerk } from '@clerk/nextjs'
import { Boolean, pipe } from 'effect'
import { asyncNoOp, match } from '@steepleinc/shared'
import type { IO } from '@trigger.dev/sdk'
import { Option, pipe, ReadonlyArray, String } from 'effect'
import qs from 'qs'
import type { z } from 'zod'
import type { PlanningCenterDonation } from '@steepleinc/shared'
import { asyncNoOp } from '@steepleinc/shared'
import { transformPlanningCenterDonation } from '../../helpers/planningCenterTransformers'
import type { triggerRouter } from '../../types'
@izakfilmalter
izakfilmalter / someEvent.ts
Last active January 7, 2024 14:39
Type safe trigger client
import { triggerRouter } from './trigger'
triggerClient.defineJob({
id: 'some-event',
name: 'Some event.',
version: '0.0.1',
trigger: eventTrigger(triggerRouter.someEvent),
run: async (payload, io) => {
await sendTriggerIOEvent(
@izakfilmalter
izakfilmalter / Button.tsx
Created December 20, 2022 13:42
Tamagui Custom Button
import { GetProps, styled, TamaguiElement, themeable } from 'tamagui'
import {
ButtonFrame,
ButtonProps as TamaguiButtonProps,
buttonStaticConfig,
ButtonText,
useButton,
} from '@tamagui/button'
import { Variable } from '@tamagui/core'
import { B, matchOn, pipe } from '@steepleinc/fp'
@izakfilmalter
izakfilmalter / backend.tf
Last active June 6, 2022 16:48
Terraform config to set up basic GKE cluster for Temporal.
terraform {
required_version = ">= 1.2.1"
cloud {
organization = var.tf_organization
workspaces {
name = var.tf_workspace
}
}
@izakfilmalter
izakfilmalter / FormikSelect.tsx
Created May 8, 2022 10:02
Bottom Sheet Select
import { ReactNativeStyle } from '@emotion/native'
import { isNotNil } from '@steepleinc/shared'
import { AvatarType } from 'Components/Avatar/Avatar'
import { Select, SelectOption } from 'Components/Select'
import { getFieldErrors } from 'Helpers/form'
import { useField, useFormikContext } from 'formik'
import { ReactElement } from 'react'
export type FormikSelectProps<
T extends object,