Kora — це ваша інфраструктура підписання для Solana. Увімкніть транзакції без газу, де користувачі сплачують комісії в будь-якому токені — USDC, BONK або нативному токені вашого додатку — або обробляйте будь-яке підписання транзакцій, що вимагає довіреного підписувача.
Чому Kora?
- Кращий UX: Користувачам ніколи не потрібен SOL
- Контроль доходів: Збирайте комісії в USDC, вашому токені або будь-якому іншому
- Готовність до продакшну: Вбудована безпечна валідація, обмеження швидкості, моніторинг
- Легка інтеграція: JSON-RPC API + TypeScript SDK
- Гнучке розгортання: Railway, Docker або будь-яка хмарна платформа
Архітектура
- Мова: Rust з TypeScript SDK
- Протокол: JSON-RPC 2.0
- Підписувачі: Solana Private Key, Turnkey, Privy
- Аутентифікація: API Key, HMAC або без неї
- Розгортання: Гнучкі варіанти розгортання (Docker, Railway тощо)
Можливості
- Налаштовувані правила валідації та дозволені списки
- Повна підтримка Token-2022 з фільтрацією розширень
- Redis-кешування для покращення продуктивності
- Обмеження швидкості та захист від перевитрат
- Безпечне управління ключами (Turnkey, Privy, Vault)
- Аутентифікація HMAC та API key
- Метрики та моніторинг Prometheus
- Розширені політики захисту платника комісій
Швидкий старт
Встановіть Kora:
cargo install kora-cli
Базове використання:
kora rpc [OPTIONS] # --help for full list of options
→ Посібник швидкого старту - Запустіть Kora локально за лічені хвилини
→ Посібник оператора вузла - Запустіть paymaster
TypeScript SDK
Kora надає простий JSON-RPC інтерфейс з трьома варіантами клієнтів:
// Option 1: Standalone clientimport { KoraClient } from "@solana/kora";const kora = new KoraClient({ rpcUrl: "http://localhost:8080" });const signed = await kora.signTransaction({ transaction });// Option 2: Kit client (recommended) — handles planning, fees, signing, and sendingimport { createKitKoraClient } from "@solana/kora";import { address } from "@solana/kit";const client = await createKitKoraClient({endpoint: "http://localhost:8080",rpcUrl: "https://api.mainnet-beta.solana.com",feeToken: address("EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"),feePayerWallet: userSigner});
→ Довідник API - JSON-RPC методи та TypeScript SDK
Локальна розробка
Передумови
- Rust 1.86+ або
- Solana CLI 2.2+
- Node.js 20+ і pnpm (для SDK)
Встановлення
git clone https://github.com/solana-foundation/kora.gitcd koragit checkout v2.0.5just install
Збірка
just build
Запуск сервера
Базове використання:
kora rpc [OPTIONS]
Або для запуску з тестовою конфігурацією виконайте:
just run
Локальне тестування
Запустіть усі тести:
just test-all
Спільнота та підтримка
- Маєте запитання? Запитайте на
Solana Stack Exchange (використовуйте тег
kora) - Виявили проблему? Повідомте на GitHub Issues
Інші ресурси
- Kora CLI Crates.io - Rust-пакет для запуску вузла Kora
- @solana/kora NPM Package - TypeScript SDK для взаємодії з вузлом Kora
Джерело
Створено та підтримується Solana Foundation.
Ліцензовано за MIT. Докладніше див. LICENSE.
Is this page helpful?