Files
gradio-webrtc/docs/cookbook.md
Freddy Boulton 853d6a06b5 Rebrand to FastRTC (#60)
* Add code

* add code

* add code

* Rename messages

* rename

* add code

* Add demo

* docs + demos + bug fixes

* add code

* styles

* user guide

* Styles

* Add code

* misc docs updates

* print nit

* whisper + pr

* url for images

* whsiper update

* Fix bugs

* remove demo files

* version number

* Fix pypi readme

* Fix

* demos

* Add llama code editor

* Update llama code editor and object detection cookbook

* Add more cookbook demos

* add code

* Fix links for PR deploys

* add code

* Fix the install

* add tts

* TTS docs

* Typo

* Pending bubbles for reply on pause

* Stream redesign (#63)

* better error handling

* Websocket error handling

* add code

---------

Co-authored-by: Freddy Boulton <freddyboulton@hf-freddy.local>

* remove docs from dist

* Some docs typos

* more typos

* upload changes + docs

* docs

* better phone

* update docs

* add code

* Make demos better

* fix docs + websocket start_up

* remove mention of FastAPI app

* fastphone tweaks

* add code

* ReplyOnStopWord fixes

* Fix cookbook

* Fix pypi readme

* add code

* bump versions

* sambanova cookbook

* Fix tags

* Llm voice chat

* kyutai tag

* Add error message to all index.html

* STT module uses Moonshine

* Not required from typing extensions

* fix llm voice chat

* Add vpn warning

* demo fixes

* demos

* Add more ui args and gemini audio-video

* update cookbook

* version 9

---------

Co-authored-by: Freddy Boulton <freddyboulton@hf-freddy.local>
2025-02-24 01:13:42 -05:00

12 KiB

<style> .tag-button { cursor: pointer; opacity: 0.5; transition: opacity 0.2s ease; } .tag-button > code { color: var(--supernova); } .tag-button.active { opacity: 1; } </style>

A collection of applications built with FastRTC. Click on the tags below to find the app you're looking for!

audio video llm computer-vision real-time-api voice chat code generation stopword transcription SambaNova Groq ElevenLabs Kyutai
<script> function filterCards() { const activeButtons = document.querySelectorAll('.tag-button.active'); const selectedTags = Array.from(activeButtons).map(button => button.getAttribute('data-tag')); const cards = document.querySelectorAll('.grid.cards > ul > li > p[data-tags]'); cards.forEach(card => { const cardTags = card.getAttribute('data-tags').split(','); const shouldShow = selectedTags.length === 0 || selectedTags.some(tag => cardTags.includes(tag)); card.parentElement.style.display = shouldShow ? 'block' : 'none'; }); } document.querySelectorAll('.tag-button').forEach(button => { button.addEventListener('click', () => { button.classList.toggle('active'); filterCards(); }); }); </script>