vue-telegram icon indicating copy to clipboard operation
vue-telegram copied to clipboard

Telegram integration for Vue

vue-tg - Telegram integration for Vue

A package for seamless integration of Telegram Mini Apps and Telegram Widgets features.

Documentation »

Usage Example

<script lang="ts" setup>
import { MainButton, useWebAppPopup } from 'vue-tg'

const { showAlert } = useWebAppPopup()
</script>

<template>
  <MainButton text="Open alert" @click="() => showAlert('Hello!')" />
</template>

Installation

To connect your Mini App to the Telegram client, place the script telegram-web-app.js in the <head> tag before any other scripts, using this code:

<script src="https://telegram.org/js/telegram-web-app.js"></script>

After that, install package:

npm i vue-tg

Global Aliases (Optional)

Register on Vue instance:

import VueTelegram from 'vue-tg'

Vue.use(VueTelegram)

After that, you can use global aliases for components

<script lang="ts" setup>
import { Alert } from 'vue-tg'
</script>

<template>
  <Alert message="Hello!" />
</template>

<!-- Same with using an alias of the component -->

<template>
  <tg-alert message="Hello!" />
</template>

Documentation

Widgets

Components

Mini Apps

Components

Composables