Skip to content

Instantly share code, notes, and snippets.

View faddat's full-sized avatar

Jacob Gadikian faddat

View GitHub Profile
@olragon
olragon / benchmark-bun-deno-node.md
Created August 29, 2023 03:49
Benchmark Bun, Deno & NodeJS web servers
Framework Average Get (/) Params, query & header Post JSON
uws (node) 98,742.06 117,931.1 106,347.08 71,948
hyper-express (node) 82,449.5 118,198.57 88,546.88 40,603.05
bun (bun) 81,971.373 99,946.51 78,488.13 67,479.48
elysia (bun) 79,643.103 98,266.18 76,637.37 64,025.76
vixeny (bun) 79,508.623 96,996.36 79,585.35 61,944.16
stricjs (bun) 79,120.123 97,804.01 78,028.85 61,527.51
hono (bun) 75,293.96 95,430.31 70,915.01 59,536.56
bun-web-standard (bun) 73,925.933 88,856.78 70,520.02 62,401
@joeabbey
joeabbey / README.md
Last active February 28, 2022 20:25
Measuring Osmosis Epoch

Introduction

Osmosis is an automated market maker for interchain assets. Over the past 7 months, the adoption has continued to accelerate with nearly $1.5B in TVL as of the time of writing. Additionally, the AMM supports 33 unique assets and continues to add new assets as new chains join IBC.

Osmosis is unique from other Cosmos Chains with the implementation of an epochs module. The epochs module hooks the incentives and mint keepers to distribute various rewards once a day. With the growth of the network, increase in incentivized pools, the time to compute the epoch block and produce a NewHeight has increased to roughly 20 minutes.

New users are coming to Osmosis everyday and stay for its ease-of-use, access to many new assets, and incredible speed. The epoch block takes new users by surprise, and can be a negative experience. With more AMMs arriving in the IBC ecosystem, giving us

@blockpane
blockpane / no-peers.sh
Created September 16, 2021 18:04
monit checks for osmosis
#!/bin/bash
PROMETHEUS=http://localhost:26660
NUM_PEERS=$(curl -s ${PROMETHEUS}/stats |grep 'p2p_peers{' |awk '{print $NF}')
# if we can't connect don't alarm, that is done in another check.
[ -z $NUM_PEERS ] && exit 0
if [ $NUM_PEERS -eq 0 ] ; then
echo NO PEERS ARE CONNECTED
@blockpane
blockpane / striped.md
Last active August 7, 2023 18:47
Striped block devices on Digitalocean

LVM Setup on DO for striped block devices:

This example is specifically for my Osmosis seed node, that I run in the cloud, all my other nodes are on hardware, and I use a very different setup on those.

These instructions should work on just about any cloud provider, by striping block devices it's possible to get much higher IOPS and throughput. On Omosis in particular this is important. It doesn't cost any more to use striped volumes, so for example 3 40GB volumes cost the same as a single 120GB, but give (almost) 3x the performance.

After provisioning new block devices (do not format automatically) in the DO console and attaching them, ssh into the droplet and as root follow the directions below. I try to shoot for < 50% usage, so right now with about 120GiB needed, three 90GB volumes will do nicely.

_Note that extending the volume group in the future will require adding exactly the same number and size of volumes. Alternatively you can just use the same procedure here to move the files into a new vol

@johnpatten1
johnpatten1 / CommunitysupportDAO.md
Last active September 25, 2021 02:23
Community Support DAO Governance Proposal

Community Support DAO Governance Proposal

Proposal: Allocate 60,000 OSMO from the community pool to a community multisig address to be spent on bootstrapping and managing the Osmosis community support DAO

The DAO will be controlled by a 3-of-5 community multisig. The admins of this multisig will be:

  • Michael Barbera (TG @MikeBarb)
  • Dennis Kim (TG @SJ_DK)
  • Edwin Hartman (TG @DynamicManic)
  • Justin M (TG @jm124578)
  • Kevin Dizzle (TG @kevindizzle)

Upgrade nodejs to v12.x.x

$ sudo npm install -g n
$ sudo n lts

Install hsd

@ryanburnette
ryanburnette / Caddyfile
Last active April 1, 2024 07:54
Caddy v2.1+ CORS whitelist
(cors) {
@cors_preflight{args.0} method OPTIONS
@cors{args.0} header Origin {args.0}
handle @cors_preflight{args.0} {
header {
Access-Control-Allow-Origin "{args.0}"
Access-Control-Allow-Methods "GET, POST, PUT, PATCH, DELETE, OPTIONS"
Access-Control-Allow-Headers *
Access-Control-Max-Age "3600"
@jaekwon
jaekwon / gist:efd52601a816c752ff9bff4e1fe1e3ef
Last active August 24, 2020 04:17
old forum.tendermint.com backup partial

NOTE: This is a partial forum.tendermint.com backup, a post from Nov 2014! Besides this, there was the vision statement of the multi-chain universe from Arthur Fall's interview "Bitcoin Uncensored", and then there was the Cosmos Network whitepaper where I (Jae) coined the term Inter-Blockchain-Communication (IBC) for short.

On the Applications of Tendermint technology

Go-Tendermint as of Nov 2014 is a bare minimal implementation of the Tendermint consensus protocol.

Before continuing development further let's discuss project directions. Here are some I have in mind:

  • Integrate Go-Tendermint with Conformal's Bitcoin API - supporting the existing Bitcoin infrastructure has its advantages. Clients should ideally work seamlessly with few modifications. Exchanges and other services would have little trouble supporting Tendermint. The Bitcoin community had put a ton of effort in designing Bitcoin with more BIPs on the way so we could build on top of tha

Handshake Airdrop

The airdrop is based on the paper An airdrop that preserves recipient privacy.

To claim the airdrop, you needed to have at least 15 followers on Github as of ~2 years ago and an ssh or gpg key linked to your Github account. You will need to download hsd to create an address and have access to the key linked to your Github account.

It is an easy process with 3 terminals. If you prefer to use a GUI, see Bob.

(capital) One is the *meta-Cosmos
. the *meta-Cosmos includes our Cosmos, our universe, all past/present/future.
. one is a local construct of the Cosmos.
. there are many truths all enmeshed with each other.
. the whole Truth cannot be seen.
. each one has their unique truth.
. only they (the "one"s in the statement above) can say their truths.
. only the One (or They) can say the Truth.
. every one should be encouraged to speak their truth.
. it's ok to claim that something is True, if you really believe it.