agentsclimarketplace

Syncfusion vue speech to text

Skill syncfusion/vue-ui-components-skills/skills/syncfusion-vue-speech-to-text

This repository contains agent prompts for creating skills and organizing AI agent capabilities.

Install
npx -y skills add syncfusion/vue-ui-components-skills --skill syncfusion-vue-speech-to-text

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
  • 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Implement the Syncfusion Vue Speech-to-Text component. Instructions for integrating voice input, real-time transcription, language configuration, programmatic control, event handling, UI customization, browser compatibility, and security considerations for microphone-enabled applications.

SKILL.md

6.0 KB, ~1.3k tokens by cl100k_base, as published. Nobody here has run it

Syncfusion Vue Speech-to-Text Component

The Syncfusion Vue Speech-to-Text component converts spoken words into text using the browser's Speech Recognition API. This skill covers setup, configuration, event handling, customization, and security considerations for implementing real-time voice transcription in Vue 3 applications.

Browser Support & Requirements

The Speech-to-Text component requires:

  • Browser Support: Chrome 25+, Edge 79+, Safari 12+, Opera 30+ (Firefox not supported)
  • API Dependency: HTML5 Speech Recognition API
  • Internet Connection: Required for speech processing
  • User Permission: Microphone access consent

Documentation and Navigation Guide

Getting Started

πŸ“„ Read: references/getting-started.md

  • Vue 3 project setup with Vite
  • Package installation and configuration
  • CSS theme imports
  • Component registration
  • Browser compatibility requirements

Speech Recognition & Configuration

πŸ“„ Read: references/speech-recognition.md

  • Retrieving transcribed text with transcript property
  • Setting language with lang property
  • Managing real-time results with allowInterimResults
  • Understanding listening states (Inactive, Listening, Stopped)
  • Showing/hiding tooltips with showTooltip
  • Disabling the component
  • Error handling and troubleshooting

Methods & Programmatic Control

πŸ“„ Read: references/methods.md

  • Starting speech recognition with startListening()
  • Stopping recognition with stopListening()
  • Programmatic control patterns and use cases

Events & Lifecycle

πŸ“„ Read: references/events.md

  • Component initialization with created event
  • Speech recognition lifecycle: onStart, onStop
  • Error detection with onError event
  • Real-time transcription with transcriptChanged event
  • Event argument structures and practical examples

Appearance & Customization

πŸ“„ Read: references/appearance.md

  • Customizing button text and content
  • Button icon configuration and positioning
  • Primary button styling
  • Tooltip content and positioning
  • CSS class styling (e-primary, e-outline, e-info, e-success, e-warning, e-danger)
  • Custom styling examples

Globalization & Localization

πŸ“„ Read: references/globalization.md

  • Localization with L10n.load() method
  • Translation key identifiers and default values
  • Language configuration with locale property
  • Right-to-Left (RTL) support with enableRtl property
  • Multi-language examples

Security Considerations

πŸ“„ Read: references/security.md

  • Online dependency and offline fallback
  • Data transmission security risks
  • Privacy concerns with third-party servers
  • Man-in-the-Middle (MITM) attack vectors
  • Mitigation strategies and best practices

Quick Start

Basic Setup with Composition API:

<template>
  <div id="container">
    <ejs-speechtotext id="speechtotext" @transcript-changed="onTranscriptChange"></ejs-speechtotext>
    <ejs-textarea v-model="textareaValue" rows="5" cols="50" resizeMode="None" placeholder="Transcribed text will be shown here..."></ejs-textarea>
  </div>
</template>

<script setup>
import { ref } from "vue";
import { SpeechToTextComponent as EjsSpeechtotext, TextAreaComponent as EjsTextarea } from "@syncfusion/ej2-vue-inputs";

const textareaValue = ref('');

const onTranscriptChange = (args) => {
  textareaValue.value = args.transcript;
};

</script>

<style>
@import "../node_modules/@syncfusion/ej2-material3-theme/styles/speech-to-text/index.css";
</style>

Common Patterns

Pattern 1: Real-Time vs Final Transcription

Display results as the user speaks (interim results) or wait for complete speech:

<!-- Real-time results (default, allowInterimResults=true) -->
<ejs-speechtotext @transcript-changed="onTranscriptChange"></ejs-speechtotext>

<!-- Final results only (allowInterimResults=false) -->
<ejs-speechtotext @transcript-changed="onTranscriptChange" :allow-interim-results="false"></ejs-speechtotext>

Pattern 2: Multi-Language Support

Set language for speech recognition:

<!-- English (US) -->
<ejs-speechtotext lang="en-US" @transcript-changed="onTranscriptChange"></ejs-speechtotext>

<!-- French -->
<ejs-speechtotext lang="fr-FR" @transcript-changed="onTranscriptChange"></ejs-speechtotext>

Pattern 3: Programmatic Control

Trigger speech recognition from buttons:

<template>
  <div>
    <button @click="startRecognition">Start Listening</button>
    <button @click="stopRecognition">Stop Listening</button>
    <ejs-speechtotext ref="speechToTextInstance"></ejs-speechtotext>
  </div>
</template>

<script setup>
const speechToTextInstance = ref(null);

const startRecognition = () => {
  speechToTextInstance.value.startListening();
};

const stopRecognition = () => {
  speechToTextInstance.value.stopListening();
};
</script>

Pattern 4: Listening State Monitoring

Track component state changes:

<template>
  <div>
    <p>Status: {{ listeningState }}</p>
    <ejs-speechtotext @start="(args) => listeningState = args.listeningState" @stop="(args) => listeningState = args.listeningState"></ejs-speechtotext>
  </div>
</template>

<script setup>
const listeningState = ref('Inactive');
</script>

Pattern 5: Error Handling

Capture and respond to speech recognition errors:

<template>
  <ejs-speechtotext @error="onError"></ejs-speechtotext>
</template>

<script setup>
const onError = (args) => {
  console.error('Speech recognition error:', args);
};
</script>

What ships with it: 7 files

53.2 KB alongside SKILL.md

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.