Учебный блокчейн memechain, написанный с Claude Code за три недели
Автор дал Claude Code один короткий запрос (каждый мем получает свой блок) и примерно за три недели получил рабочий учебный блокчейн в духе Bitcoin. Код целиком написан в терминале с Claude Code, автор проверял, тестировал и принимал решения.
Что сделали
В цепочке мем это запись, где SHA-256 картинки попадает в подписанную транзакцию, майнер кладёт её в блок, и у мема появляется владелец, который может выставить его на продажу. Правила такие. Двойной SHA-256 для доказательства работы, пересчёт сложности каждые 10 блоков, 50 токенов MEME за блок с халвингом, кошельки secp256k1 с подписями по RFC 6979. Денег и реального токена нет, MEME тестовый и не продаётся.
Одни и те же правила консенсуса работают дважды. Узел на Python (node.py) ведёт публичную тестовую сеть, а docs/chain.js исполняет те же правила в браузере. В браузере можно создать кошелёк, майнить блоки, записать картинку, выставить её на продажу, купить и пересчитать всю цепочку с первого блока, проверяя каждый хеш и подпись. Экспорт chain.json проверяет узел на Python, а npm test сверяет хеши JS и Python.
Тестовая сеть живёт без постоянного сервера. Задание GitHub Actions каждые 20 минут запускает узел, майнит несколько блоков, записывает мемы из общей папки и отправляет экспорт в ветку testnet. Статический сайт читает его оттуда. Каждый десятый хеш блока отмечается в Bitcoin через OpenTimestamps. Новый мем в пул добавляют через pull request.
Как использовали Claude. Сначала Python-узел, затем построчный порт на JS с проверкой, что обе версии дают одинаковые результаты. Claude запускал Playwright на локальной странице, смотрел скриншоты и критиковал собственную вёрстку, два дизайна выбросили. Схему без сервера (Actions и ветка) предложил сам Claude, когда автор сказал, что не хочет держать сервер.
Что получилось
Сеть работает, её можно попробовать в браузере бесплатно, без регистрации и установки. Исходный код открыт под лицензией MIT. С первого раза не вышли две вещи. Браузерный майнер подвешивал интерфейс, пока его не перевели на пакетные циклы подбора nonce. А первый пересчёт сложности сильно уходил в сторону на браузерной цепочке с блоком в одну секунду, пока не добавили ограничение.
На что обратить внимание
Это учебный проект. Токена с реальной стоимостью нет, автор хотел понять, как устроен рынок на блокчейне, а не запускать монету. Автор сам просит отзывов именно по правилам консенсуса, независимой проверки безопасности в посте нет.
Пояснение
Халвинг это уменьшение награды за блок вдвое через заданное число блоков. Proof of work это доказательство работы, когда майнер подбирает число, дающее хеш с нужными свойствами. GitHub Actions это встроенный в GitHub запуск скриптов по расписанию.
Кому пригодится
Тем, кто хочет на практике разобраться в устройстве блокчейна и готов вести проект с агентом, проверяя результат тестами.
Попробуйте сами с Claude Code
Ты помогаешь мне построить учебный проект [краткое описание идеи, например блокчейн или другая система], чтобы разобраться, как она устроена. Это эксперимент, реальных денег и реального токена в нём не будет. Как работаем. 1. Сначала напиши эталонную версию на [язык, например Python] и объясни правила, которые ты в неё заложил. 2. Потом сделай построчный порт на [второй язык, например JavaScript] и напиши тест, который сверяет результаты обеих версий. Любое дальнейшее изменение должно проходить оба варианта. 3. Если нужен интерфейс, запусти Playwright на локальной странице, посмотри скриншоты и покритикуй свою вёрстку, потом исправь. 4. Если я скажу, что не хочу держать сервер, предложи вариант, где обходятся расписанием в GitHub Actions и статическим сайтом. 5. Отдельно проверь два места, где обычно ломается с первого раза. Тяжёлые вычисления в браузере не должны вешать интерфейс, а автоматическая подстройка параметров не должна уходить в крайности на быстрых тестовых данных. Я проверяю, тестирую и принимаю решения сам. Перед крупными изменениями спрашивай.
Нужна помощь с запуском? Вступайте в сообщество AI Pack ↗
Источник: reddit.com ·