Skip to content

Instantly share code, notes, and snippets.

View tunnckoCore's full-sized avatar
🔒
Fighting for freedom, security and privacy 🔐

Charlike Mike Reagent tunnckoCore

🔒
Fighting for freedom, security and privacy 🔐
View GitHub Profile
@tunnckoCore
tunnckoCore / 0xneko-nfts.json
Last active October 12, 2025 04:39
Metadata for 0xNeko NFTs, Ordinals, and Ethscriptions
[
{
"block_hash": "0xe6c7ca185f97fe3a9291def8b237aebf60a5a5191e3d3e618f2e695a68200eec",
"block_number": 14767034,
"block_timestamp": 1652429765000,
"content_sha": "0x54eb9628cb086fbb024397cc53321141b531b9211d117e164f14e4f04a25bce8",
"creator": "0x120807ecabb7def982f0b4155958c3fbb8cea7c0",
"current_owner": "0x",
"event_log_index": 231,
"id": "0xc8208bb58d4879c26d5a87df0c8709ac0ca405b27f60d96cf58c9c57b6aa2e61",
@tunnckoCore
tunnckoCore / fetch-all-nekos.ts
Last active October 2, 2025 02:42
Fetcher for all 192 ethscribed 0xNekos OG - could output item by item, or a collection manifest
import * as cheerio from "cheerio";
export type Attribute = {
trait_type: string;
value: string;
};
export type CollectionItem = {
id: string;
index: number;
@tunnckoCore
tunnckoCore / 1_unique-holders.csv
Last active September 30, 2025 05:32
Hypurr Snapshot, Sept 30, 2025. - Holders & Unique Holders. Search yourself with canonical address (case-sensitive), usually what's in your metamask or in the etherscan page of your address.
owner
0x50812D1D77027DA036D5F768BEfEd24f2595a6dA
0x72651A2c33888DBd30Cf783704f02F86ce6Aa36F
0xeb769d8db951064bB2dEFa04e0E750e2694930fB
0x566339480990eAdEe8f30153785e580df875E2Bd
0x4a809bF97E2A8D5E2b2a89fCC24c064AbAaffd07
0x673025e41c7bd5dB7d26eebAc75D78aB10051236
0x7161b0519646080Cb243d725b3879489Efe978b7
0x8D275E8Ed678985a522160Eca69C2c0Fb5FA8dE9
0x087C01d466824a47c0077F4bbeCA3D4626Eb607B
@tunnckoCore
tunnckoCore / comrades-holders-snapshot-2025-08-28.csv
Created August 28, 2025 16:42
Calldata Comrades Snapshot of holders, 2025-08-28 T 16:40:30.016Z
We can't make this file beautiful and searchable because it's too large.
ethscription_id,holder
0xa242d9913b5411dee0c0335c144159b450b43f1693807b43ef365391a154b667,0xebfd774c1c2008e56ce40e0a4504ebecc81b1921
0x02d03d758a346d3f7fb640440f468e1d76deb58ac8a8d03fef7477b19b3cf01f,0x06b65134068034952e45a1cd8ed92ae94a79c2e1
0x59d9247614e28661bf6db605705c7131d8d1efe48832c9a0beb8429ee797f484,0x06b65134068034952e45a1cd8ed92ae94a79c2e1
0x5e3515ddc974d51fa78b8ca30965c6b7019cae9105fbd69be0fb026a42bad6aa,0x06b65134068034952e45a1cd8ed92ae94a79c2e1
0x2f17891f1038ea0f5e27cd6709aa45bbe7cc794ecae39c9586512ed40bc82c1d,0x06b65134068034952e45a1cd8ed92ae94a79c2e1
0x85376f274f28e90f841b58d7e0ef03ac0a94cdf484c27c88cbc4f8b89346ceb6,0xbac5c05feacef303d742ba8e32365bc37c51dc2c
0xdb7480ba954e267a82d607db0b0008808de1ddec102fa3f778fec566aedf6b0b,0x06b65134068034952e45a1cd8ed92ae94a79c2e1
0xf5219c89ca6d2b5ffb8ef99d9d529cfd8115fade56ec511d9e9b32493f199442,0x06b65134068034952e45a1cd8ed92ae94a79c2e1
0x661958fb07d997ac6698da2f6b6a01faf68213f48c68d323fdef509eaadbfefe,0x06b65134068034952e45a1cd8ed92ae94a79c2e1
@tunnckoCore
tunnckoCore / inputs.ts
Last active August 22, 2025 16:43
few test cases of ethereum calldata for easier Ethscriptions indexing, we can safely ignore ones that are not `inputData.length % 64 === 0`
const inputs = {
mevbots: `0x7000000000000000000000000000000063793f12b9fbd30ed1c997cfe82480981b05464000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003a33acb7ef000000000000000000000000000000000000000000047497646152b5c0000000000000000000000000000000a0b86991c6218b36c1d19d4a2e9eb0ce3606eb480000000000000000000000000000000000000000000000000004cd3db4c3e9c00000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000b2ef20f0e2548f3dc556c100000000000000000000000000000000000000000000000000000000000000640000000000000000000000004838b106fce9647bdf1e7877bf73ce8b0bad5f97`,
erc20transferTo: `0xa9059cbb0000000000000000000000009f2d6d0b0baa32a505e1ee13751a8acfcb338a060000000000000000000000000000000000000000000000000000000114dd1340`,
erc20approve: `0x095ea7b3000000000000000000000000c026395860db2d07ee33e05fe50ed7bd583189c7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff`,
handleOps: `0x765e827f000
@tunnckoCore
tunnckoCore / auth-data.ts
Created June 3, 2025 20:44 — forked from transitive-bullshit/auth-data.ts
Example of how to use Drizzle Postgres as a storage adaptor with OpenAuth
import { jsonb, pgTable, text, timestamp } from 'drizzle-orm/pg-core'
// Simple key-value store of JSON data for OpenAuth-related state.
export const authData = pgTable('auth_data', {
// Example ID keys:
// "oauth:refresh\u001fuser:f99d3004946f9abb\u001f2cae301e-3fdc-40c4-8cda-83b25a616d06"
// "signing:key\u001ff001a516-838d-4c88-aa9e-719d8fc9d5a3"
// "email\[email protected]\u001fpassword"
// "encryption:key\u001f14d3c324-f9c7-4867-81a9-b0b77b0db0be"
id: text().primaryKey(),
@tunnckoCore
tunnckoCore / index.js
Last active April 25, 2025 02:34
comrades to ranks
async function fetchAndProcessComrades() {
const url = 'https://rawcdn.githack.com/NoMoreLabs/Call-Data-Comrades/refs/heads/main/metadata/call-data-comrades.json';
try {
const response = await fetch(url);
if (!response.ok) {
throw new Error(`HTTP error! status: ${response.status}`);
}
const data = await response.json();
@tunnckoCore
tunnckoCore / orpc-router-to-mcp-tools.ts
Created March 29, 2025 17:05
converting oRPC routers to MCP tools - beginning, it's buggy.. can't figure out how to provide the procedure's inputSchema as mcp tool schema... should be `inputSchema.shape` but.. it errors
interface McpToolResult {
content: Array<{ type: string; text: string }>;
isError?: boolean;
}
interface OrpcProcedureMeta {
meta?: {
tool_name?: string;
};
@tunnckoCore
tunnckoCore / ethscriptions-openapi.json
Created March 29, 2025 08:07
Ethscriptions OpenAPI spec - json format
{
"openapi": "3.0.1",
"info": {
"title": "Ethscriptions API V2",
"version": "v2",
"description": "## Overview\n\nWelcome to the Ethscriptions Indexer API docs!\n\nThis API enables you to learn everything about the ethscriptions protocol. All instances of the open source [Ethscriptions Indexer](https://github.com/0xFacet/ethscriptions-indexer) expose this API.\n\nIf you don't want to run your own instance of the indexer you can use ours for free using the base URL `https://api.ethscriptions.com/v2`.\n\n## Community and Support\n \nJoin our community on [GitHub](https://github.com/0xFacet/ethscriptions-indexer) and [Discord](https://discord.gg/ethscriptions) to contribute, get support, and share your experiences with the Ethscriptions Indexer.\n\n"
},
"paths": {
"/ethscription_transfers": {
"get": {
@tunnckoCore
tunnckoCore / readme.md
Last active January 28, 2025 01:00
ESIP-12 transfer ethscriptions through facet contracts

ESIP-9 transfer ethscriptions through facet contracts

  1. Create a facet transaction to a global/main/single facet-deployed contract (could be factory for creating L2 nft contracts)
  2. In facet data pass the ethscription ids, similar to how we do ESIP-5
  3. Ethscriptions indexers detects transactions to this facet contract, easily by just inspecting transaction's input calldata hex

Somethig like that