Skip to content

Instantly share code, notes, and snippets.

@homakov
homakov / max.md
Created September 11, 2025 11:07
max.md

Got it. Here’s the final full Markdown spec in English, expanded with additional details, examples, and diagrams so another model (or developer) could fully grasp XLN’s architecture, primitives, and why it’s revolutionary.

📜 XLN Specification — Unified Financial Internet

  1. Philosophy and Terminology

XLN (Extended Lightning Network) is a unified protocol for the Financial Internet. Its foundation: the world can be modeled as a composition of deterministic state machines that interact in a perfect dance.

// === TYPES ===
declare const console: any;
let DEBUG = true;
interface ServerInput {
serverTxs: ServerTx[];
entityInputs: EntityInput[];
}
interface ServerTx {
@homakov
homakov / entity.sol
Last active May 12, 2024 19:26
entity.sol
pragma solidity ^0.8.19;
contract EntityProvider {
struct Entity {
address tokenAddress;
string name;
bytes32 currentAuthenticatorHash;
@homakov
homakov / booking.js
Last active May 1, 2023 00:07
booking
// go to booking.com and search for hotels
// set your favorite filters first to reduce the result pages to 5-10.
// then paste this script in JS console
!(function () {
function e(t, o) {
return n
? void (n.transaction("s").objectStore("s").get(t).onsuccess = function (
e
) {
@homakov
homakov / m.md
Last active March 20, 2021 01:56
XLN channel lifecycle

Alice puts assets in channel

Alice downloads XLN wallet. After logging in with passphrase/mnemonic, it shows a list of hubs (downloaded from public hubs contract array), along with various metrics and data: name, total collateral locked around the hub, gasused (the most reliable one) etc.

Alice chooses Hub and sets up a channel offchain and adds asset_id=0,1 (weth/dai). Both parties sign off on a dispute proof

dispute_nonce=1
entries=[
[0,0], //asset_id, offdelta
@homakov
homakov / config.ru
Last active September 24, 2016 21:30
config.ru
# This file is used by Rack-based servers to start the application.
require ::File.expand_path('../config/environment', __FILE__)
#prevents DNS rebinding attacks
class DNSBinding
VALID_HOSTS = %w{localhost:9292 myshop.dev:3000 myshopprod.com}
def initialize(app)
@app = app
end