alina schanz
home / scripts

the scripts

thirteen repositories: eleven in python 3.10+ on the standard library, one typescript twin with zero dependencies, and this site, all on public endpoints without an api key. your browser reads the status below from github as you open the page.

i keep them public so you can rerun a number before you quote it. i sign every commit, and the tests run on every push on python 3.10, 3.12 and 3.13.

onchain-notes

the numbers i look at before writing anything: prices, base fee, fear & greed, tvl by chain, btc dominance. one card, one screen, plus what a transfer, a swap and a mint cost right now, in cents.

python daily_card.py

gasweek

the base fee of every block of the last week, binned by hour of day and weekday, as a table and an svg, so you can see when ethereum is cheapest. it writes the daily dataset.

pip install git+https://github.com/alinaschanz/gasweek && gasweek --tz +2

bigmoves

large stablecoin, weth and wbtc transfers in the last n blocks, priced, with exchange and bridge labels. --follow keeps watching.

bigmoves --blocks 50 --min-usd 1000000

stablepeg

whether each stablecoin still trades at a dollar: uniswap v3 spot and a ten-minute twap from the deepest pool, a curve 3pool quote for 100k, coingecko next to it.

stablepeg

ens-lookup

ens names to addresses and back, text records included. pure python, its own keccak-256, reverse lookups confirmed forward.

enslookup vitalik.eth --all-text

blobwatch

who bought ethereum's blob space in the last ten minutes, and what they paid: every blob transaction priced from its block header and grouped by the rollup that posted it. each name comes with a source, or from the chain itself.

blobwatch --since 1h

lendrates

what a dollar earns and what borrowing one costs on aave v3, spark and compound v3, next to the sky savings rate. every number read from the contracts at one block.

lendrates --assets USDC,USDT

rpcprobe

which public ethereum rpcs answer today, and what they let you do: log ranges, archive state, batches, the blob fee, eth_config. the fallback lists in the other scripts come from it.

rpcprobe --only publicnode,drpc,tenderly

builderwatch

who built the last blocks: the builder each block names in its extra data, the fee recipient, how full the blocks were, and the slots that got no block. two builders made 72% of one hour.

builderwatch --since 1h

stakeyield

what staked ether earns, read from the contracts: lido's daily rebases from its own events, ten liquid staking tokens' rates now and a week ago, the withdrawal queue, the deposit contract.

stakeyield --days 30

l2fees

what a transaction costs right now on ethereum and thirteen rollups: two real transactions priced by every chain's own oracle, execution gas and layer-1 data apart, in cents.

l2fees --chains base,arbitrum,scroll

gasweek-js

gasweek for the browser and node: the same pages of eth_feeHistory, the same interpolation and percentiles, in typescript with zero dependencies. import { gasweek, table } from "gasweek".

npm install github:alinaschanz/gasweek-js

alinaschanz.github.io

this site: hand-written html and css, a content security policy, fonts served from here, and no script from anybody else.

git clone https://github.com/alinaschanz/alinaschanz.github.io
latest commits
  • loading…

your browser asks the public github api for status, last push and open issues, sixty requests an hour per address. "unavailable" means that limit, and says nothing about the code. privacy.