Skip to content

Repository files navigation

Max JS SDK

TypeScript библиотеки для разработки Mini Apps на платформе MAX.

📦 Пакеты

Пакет Описание Ссылка
@max-js/sdk Основной SDK для взаимодействия с window.WebApp Документация
@max-js/sdk-react React-хуки и компоненты Документация
@max-js/init-data-node Валидация данных инициализации на стороне сервера (Node.js) Документация

🚀 Установка

# Core SDK
pnpm add @max-js/sdk

# React bindings
pnpm add @max-js/sdk-react

# Server-side validation
pnpm add @max-js/init-data-node

📚 Документация

Полная документация находится в папке docs/:

  • SDK Documentation — API Reference для @max-js/sdk с примерами работы с хранилищем, биометрией, NFC и тактильной отдачей
  • React SDK Documentation — Хуки (useInitData, useBackButton) и компоненты (<BackButton>) для React
  • Init Data Node Documentation — Валидация данных на сервере с примерами для Express.js и Next.js

📖 Быстрый старт

1. Подключение скрипта (Client)

В HTML-файле приложения подключите официальный SDK MAX:

<script src="https://st.max.ru/js/max-web-app.js"></script>

2. Использование в React

import { useInitData, useBackButton } from '@max-js/sdk-react'

function App() {
    const initData = useInitData()
    const backButton = useBackButton()

    useEffect(() => {
        backButton.show()
        backButton.onClick(() => window.history.back())
    }, [])

    return <div>Hello, {initData?.user?.first_name}!</div>
}

3. Валидация на сервере (Node.js)

import { validateInitData } from '@max-js/init-data-node'

const isValid = await validateInitData(rawInitData, 'YOUR_BOT_TOKEN')
if (isValid) {
    console.log('Data is authentic')
}

🛠 Разработка

# Установка зависимостей
pnpm install

# Сборка всех пакетов
pnpm build

# Запуск в режиме разработки
pnpm dev

📄 Лицензия

Apache 2.0

About

TypeScript библиотеки для разработки Mini Apps на платформе MAX.

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages