Leo Playground
Використання Leo Playground досить зрозуміле. Ви можете переглядати надані приклади, як базові, так і складні, щоб краще зрозуміти функції інструкцій Leo та Aleo.
Деякі розробники вирішують писати цілі програми в Leo playground — це ідеальне місце для перевірки компіляції та запуску ваших програм без необхідності завантажувати сам Leo (хоча ми настійно рекомендуємо це, і якщо ви хочете виконувати локально на своїй машині, ви знадобиться).
Ви можете завантажити будь-які приклади чи програми, які ви написали самостійно на Playground, і розгорнути їх у розробницькій мережі. Підручник, як це зробити, надається нижче, коли ви досягнете цього кроку!
1. Інструменти для розгортання
- Встановити Leo
- Встановіть Aleo's transaction cannon, яка допоможе вам розгортати, виконувати та стрес-тестувати ваші програми Leo.
- Встановіть snarkOS, яка допоможе запустити живу мережу локально або на AWS.
- Встановіть tmux, оскільки його використовує інформаційна панель.
2. Створіть місцевий Aleo Devnet
cd snarkOS./devnet.shEnter the total number of validators (default: 4): 4Do you want to run 'cargo install --path .' to build the binary? (y/n, default: y): nDo you want to clear the existing ledger logs? (y/n, default: n): n
Відразу під час запуску вузла ви побачите інформацію для вузла 0, скопіюйте це!
- 👋 Welcome to Aleo! We thank you for running a node and supporting privacy.- 🔑 Your development private key for node 0 is <private key>- 🪪 Your Aleo address is <address>- 🧭 Starting a validator node on Aleo Testnet 3 Phase 3 at 0.0.0.0:4130- 🌐 Starting the REST server at 0.0.0.0:3030- 🔑 Your one-time JWT token is <jwt-token>
Якщо ви пропустили його, тому що він прокручувався надто швидко, використовуйте ці команди tmux, щоб прокрутити вгору:
ctrl+b+[ # enter scroll mode to scroll upctrl+b+w # see all 4 validator nodesctrl+b+:kill-session # kills the sessionq # exit ctrl+b mode
Перевірте, чи ваша мережа працює, використовуючи http://localhost:3030/testnet3/latest/height in your browser. Висота повинна збільшуватися як знак того, що ваша мережа жива.
3. Реалізуйте свій проект дитячого майданчика на місці
Поверніться до свого проекту Playground і запустіть одну зі своїх функцій переходу leo run <function>
.
По суті, програма <program>.leo
(у папці program) компілюється в <program>.aleo
і виконується локально.
4. Розгортання вашої програми на Devnet
Давайте розгорнемо вашу програму в локальній мережі, яку ви щойно створили.
Пам’ятайте, що ви запустили чисту розробну мережу за адресою http://localhost:3030. Зараз ми хочемо розгорнути вашу програму в цій мережі.
Ще раз переконайтеся, що він працює: http://localhost:3030/testnet3/latest/height
Число висоти має рухатися вгору.
Transaction Cannon Deployment
Використовуйте гармату транзакцій, щоб розгорнути свою програму.
cd <your-project>tx-cannon deploy <project>/build/<project>.aleo -k <node-private-key-you-jotted-down-earlier> --fee 3 -e http://localhost:3030
Ви можете перевірити, чи ваше розгортання було успішним у вашій мережі, використовуючи: http://localhost:3030/testnet3/transaction/<your-txn-id>.
6. Виконання On-Chain за допомогою Transaction Cannon
Після того, як ваша програма була розгорнута в devnet, її легко виконати в мережі. Створіть файл .toml
із цими параметрами. Ви можете знайти різні приклади в репозиторії з різними вхідними даними. Наведений нижче приклад стосується helloworld.aleo
.
# helloworld.aleo[[step]]private_keys = ["your-node-private-key"]order = 0program_id = "helloworld.aleo"function = "main"inputs = [ "5u32", "5u32" ]fee = 3
Файл .toml
в основному наказує виконувати транзакції. Коли ми викликаємо команду tx-cannon execute
ми просимо її знайти програму, яку ми розгорнули в нашій локальній мережі, і виконати її, використовуючи надані вхідні дані та відповідний закритий ключ.
tx-cannon batch-execute --test helloworld.toml -e http://localhost:3030
Ще раз переконайтеся, що програма виконалася: http://localhost:3030/testnet3/transaction/<your-txn-id>
.
У репозиторії tx-cannon є набагато більше функцій, які можна дослідити. Ви можете пакетно розгортати, виконувати та передавати, тож скористайтеся перевагами цього інструменту, щоб запустити тести розробки на своїй програмі!
Вітаємо, ви забрали проект із Playground і успішно розгорнули його в мережі Aleo!
7. Отримайте значок Leo Contributor!
Пройти цей підручник було непростим завданням, тому, оскільки ви це зробили, ми хотіли б відзначити вас значком співавтора Лева на Github!
Розмістіть свою програму Leo на Github
cd aleo-projectgit init -b maingit add .git commit -m "first commit, new aleo app"
- Cтворіть нове сховище у своєму обліковому записі github.com, натиснувши «новий репозиторій» у верхньому правому куті. Налаштуйте репозиторій як загальнодоступний і не турбуйтеся про додавання файлів README, ліцензії або .gitignore. Ви можете додати ці файли після того, як ваш проект буде передано на GitHub
- У верхній частині сторінки вашого нового сховища натисніть, щоб скопіювати URL-адресу віддаленого сховища, і поверніться до свого терміналу, щоб зв’язати свій локальний проект із цим сховищем.
git remote add origin <REMOTE_URL>git remote -vgit push -u origin main
Claim your Leo badge
- Отримайте значок Лева here
- Перейдіть🥇 "Badge" і натисніть "Get Started".
- Дотримуйтесь коротких інструкцій і надішліть.
- Після схвалення вашої проблеми ми додамо вас до розділу contributors section у файлі Leo README.md.
Вітаємо з тим, що ви стали співавтором Leo! 🎉
8. Підсумок і додаткові ресурси
- Ви завантажили проект із Leo Playground.
- Ви встановили Leo, нашу статично типізовану мову програмування, створену для написання приватних програм, нашу transaction cannon для легкого розгортання та виконання, а також snarkOS, рівень доступності даних.
- Ви запустили локальну розробну мережу за допомогою репозиторію snarkOS.
- Використовуючи Leo, ви скомпілювали та локально виконували свою програму Leo.
- Використовуючи гармату транзакцій, ви розгорнули та виконали свою програму в ланцюжку в локальній розробній мережі.