Skip to content

Instantly share code, notes, and snippets.

Avatar
🟨
getting things done 💪🏻

Stefan Natter natterstefan

🟨
getting things done 💪🏻
View GitHub Profile
@natterstefan
natterstefan / README.md
Last active Sep 2, 2022
react-i18next and TS2589: Type instantiation is excessively deep and possibly infinite.
View README.md

react-i18next and TS2589: Type instantiation is excessively deep and possibly infinite.

visitors

The patch works both with tsc and next build, as described in the comments of the patch.

Inspired by

@natterstefan
natterstefan / usePrevious.ts
Created Aug 30, 2022
React | usePrevious hook
View usePrevious.ts
/**
* inspired by
* @see https://codesandbox.io/s/use-previous-hook-persistent-with-matcher-hujqez?file=/src/hooks.tsx:0-1069
* @see https://www.developerway.com/posts/implementing-advanced-use-previous-hook
* @see https://usehooks.com/usePrevious/
*/
import { useRef, useEffect } from 'react'
export const usePrevious = <TValue>(value: TValue) => {
const ref = useRef<TValue>()
@natterstefan
natterstefan / HTMLToReact.tsx
Last active Nov 25, 2022
html-react-parser | TypeScript solution
View HTMLToReact.tsx
/**
* Works in Next.js 10.x
*/
import React from 'react'
import parse, {
domToReact,
attributesToProps,
Element,
HTMLReactParserOptions,
} from 'html-react-parser'
@natterstefan
natterstefan / README.md
Last active Sep 23, 2022
Storybook | Tailwind in Next.js App with Webpack@5
View README.md

Storybook | Tailwind in Next.js App with Webpack@5

Installation

# install storybook dependencies
yarn add @storybook/addon-actions @storybook/addon-essentials @storybook/react -D
yarn add @storybook/addon-postcss@latest -D

# install webpack5 dependency
@natterstefan
natterstefan / Dockerfile
Created Mar 16, 2021
Docker | Advanced Nodejs Dockerfile
View Dockerfile
# We make use of ARG to set some variables that we
# can use in the Dockerfile
ARG node_version=14
ARG node_image=node:${node_version}-alpine
# STAGE 1: This is the "builder" stage where we build the
# application and give this step a name: "builder"
FROM $node_image as builder
ENV NODE ENV=production
@natterstefan
natterstefan / Dockerfile
Created Mar 16, 2021
Docker | Simple NodeJS Dockerfile
View Dockerfile
# We use the latest nodejs@14 image as our base image
FROM node:14-alpine
# set the default NODE_NEV to production
ENV NODE ENV=production
# make sure everything happens inside the /app folder
WORKDIR/app
# now we cache the node_modules layer
View asdf-set-version.sh
asdf global <name> <version> [<version>...]
asdf shell <name> <version> [<version>...]
asdf local <name> <version> [<version>...]
# asdf global nodejs 14.15.4
@natterstefan
natterstefan / asdf-version.sh
Created Mar 7, 2021
asdf | Install version
View asdf-version.sh
# install version for package
asdf install <name> <version>
# asdf install nodejs 14.15.4
# list installed versions
asdf list <name>
# list all versions
asdf list all <name>
@natterstefan
natterstefan / asdf-plugin.sh
Last active Mar 7, 2021
asdf | Install Plugin
View asdf-plugin.sh
# install the package
asdf plugin add <name>
# asdf plugin add nodejs
# asdf plugin add nodejs
# get a list of installed plugins
asdf plugin list
# update plugin(s)
asdf plugin update <name>