Skip to content

Instantly share code, notes, and snippets.

@rekmarks
rekmarks / keybase.md
Created October 2, 2019 17:04
keybase

Keybase proof

I hereby claim:

  • I am rekmarks on github.
  • I am rekmarks (https://keybase.io/rekmarks) on keybase.
  • I have a public key ASDEyJB4xCT718_OZ8KfidOElw2-bXfMFramgHVuNGY4ngo

To claim this, I am signing this object:

@rekmarks
rekmarks / newProvider.js
Last active April 18, 2021 17:06
Using the New MetaMask Inpage Provider
// Running on the page, in the browser
// This API will go live in early 2020
// It will be the only API available after a 6-week deprecation period
if (!ethereum || !ethereum.isMetaMask) {
throw new Error('Please install MetaMask.')
}
/*********************************************************/
@rekmarks
rekmarks / ethereum-dom-event.md
Last active May 7, 2020 19:32
Ethereum Provider Initialization Event

New event dispatched on window: ethereum#initialized

Event name inspired by JSDoc @event tag: https://jsdoc.app/tags-event.html

if (window.ethereum) {

 handleEthereum()
@rekmarks
rekmarks / mm-inpage-provider.d.ts
Created August 16, 2020 19:21
@metamask/inpage-provider draft types
export type SerializableValue = string | number | null | undefined;
export type EthereumParameterValue = SerializableValue | Record<string, SerializableValue>;
export interface RequestArguments {
method: string;
params?: EthereumParameterValue[];
}
export interface ProviderConnectInfo {
chainId: string;
}
export interface ProviderRpcError extends Error {
@rekmarks
rekmarks / .profile
Created May 13, 2022 06:46 — forked from bmhatfield/.profile
Automatic Git commit signing with GPG on OSX
# In order for gpg to find gpg-agent, gpg-agent must be running, and there must be an env
# variable pointing GPG to the gpg-agent socket. This little script, which must be sourced
# in your shell's init script (ie, .bash_profile, .zshrc, whatever), will either start
# gpg-agent or set up the GPG_AGENT_INFO variable if it's already running.
# Add the following to your shell init to set up gpg-agent automatically for every shell
if [ -f ~/.gnupg/.gpg-agent-info ] && [ -n "$(pgrep gpg-agent)" ]; then
source ~/.gnupg/.gpg-agent-info
export GPG_AGENT_INFO
else
@rekmarks
rekmarks / index.html
Last active August 19, 2024 12:00
MessagePort.postMessage() may throw
<!--
Proof that cross-realm `MessagePort.postMessage()` can throw.
-->
<!DOCTYPE html>
<html>
<head>
<title>Foo</title>
</head>
<body>