Skip to content

Instantly share code, notes, and snippets.

View dbritto-dev's full-sized avatar
🏠
Working remotely

Danilo Britto dbritto-dev

🏠
Working remotely
View GitHub Profile
@dbritto-dev
dbritto-dev / auth-context.tsx
Created October 24, 2024 21:43
AuthContext
import { useState, createContext, useMemo, useCallback, useContext } from 'react'
const AuthContext = createContext(undefined)
export const AuthProvider = ({ children }) => {
const [user, setUser] = useState(undefined)
const [isLoading, setIsLoading] = useState(false)
const [error, setError] = useState(null)
const login = useCallback(async () => {
@dbritto-dev
dbritto-dev / create-page.tsx
Last active August 3, 2024 04:27 — forked from Pagebakers/create-page.tsx
Next.js createPage helper with loader pattern
import type { AnyZodObject, z } from "zod";
import type { Metadata, ResolvingMetadata } from "next";
type InferParams<Params> = Params extends readonly string[]
? {
[K in Params[number]]?: string;
}
: Params extends AnyZodObject
? z.infer<Params>
: unknown;
@dbritto-dev
dbritto-dev / npm-ri.js
Last active July 4, 2024 19:29
npm install using regular expression
/* eslint-disable unicorn/no-process-exit */
const { spawn } = require("child_process");
const pkg = require("./package.json");
const dependencies = Object.keys(pkg.dependencies || {});
const devDependencies = Object.keys(pkg.devDependencies || {});
const pkgRegex = new RegExp(process.argv.slice(2)[0]);
const latestDependencies = dependencies
.concat(devDependencies)

Learn

  • Get Started
    • Quick Start
      • Tutorial: Tic-Tac-Toe
      • Thinking in Zustand: motivation, principles, and glossary
    • Installation
      • Start a new Project: vanilla, react, and react native
      • Using TypeScript
  • Learn Zustand
@dbritto-dev
dbritto-dev / download-canvas.js
Created November 15, 2022 16:12
Download Canvas as image in devtools
$0.toBlob(b => window.open(window.URL.createObjectURL(b), '_blank'))
@dbritto-dev
dbritto-dev / config.autoload
Created March 20, 2022 18:46
OpenVPN 3 config files
{
"autostart": true,
"user-auth": {
"autologin": true,
"username": "jane.doe",
"password": "very-secret-Let-Me-!n-P4ssword"
}
}
@dbritto-dev
dbritto-dev / make.md
Last active November 22, 2021 22:23
Support make command in Windows

Clone a new project for a new account

GIT_SSH_COMMAND='ssh -i ~/.ssh/<id_rsa_custom>' git clone [email protected]:<your-project>.git

Configure git to use the custom GIT_SSH_COMMAND

git config core.sshCommand 'ssh -i ~/.ssh/'
@dbritto-dev
dbritto-dev / redux-like.jsx
Last active June 24, 2021 16:13
React Hooks para principiantes
// contexts/auth-context.js
import React, { useReducer, useContext, createContext } from 'react'
export const AuthStateContext = createContext()
export const AuthDispatchContext = createContext()
export const AuthProvider = ({ initialState, reducer, children }) => {
const [state, dispatch] = useReducer(reducer, initialState)