
Pygments
prism.js
highlight.js
Bat
fzf
Carbon
StackEdit
Markdown by DaringFireball
TranscriptFetch
SocialFetch.dev
TranscriptAPI.com
TranscriptFetch is one API for getting text out of video and web content.
Send a URL from YouTube, TikTok, Instagram, X or Facebook and get back clean, timestamped text. Send any web page and get clean Markdown. One endpoint, one response shape, one API key.
Most short-form video has no caption track to download. TikTok's auto-captions are opt-in per upload, Instagram never publishes a downloadable track, and a large share of captions on both platforms are burned into the video frames where no parser can read them.
When there is no caption track, TranscriptFetch transcribes the audio instead. Same endpoint, same response, so your code never branches on which method produced the text.
text field for feeding a model or a search indexsegments array with per-cue start times and durations, so subtitles and jump-to-moment links are a formatting step rather than another integration100 free credits on signup, no card required. One credit per successful response. Failed, blocked and empty results are never charged, which matters on short-form video where a meaningful share of any batch is music with no speech in it.
Pygments
TranscriptFetchTranscriptFetch's answer:
Most short-form video has no caption track to download. TikTokโs auto-captions are opt-in per upload, Instagram never publishes a downloadable track, and many captions on both are burned into the video frames where no parser can read them. TranscriptFetch transcribes the audio when no caption track exists, on the same endpoint, with the same response shape. Your code never branches on which method produced the text. It also covers YouTube, TikTok, Instagram, X and Facebook plus any web page as clean Markdown, so a pipeline spanning several sources is one integration rather than five.
TranscriptFetch's answer:
Three reasons. Coverage: one API key and one response shape across five video platforms and the open web, instead of stitching together a library per platform. Reliability: requests run through rotating infrastructure, so code that works locally keeps working from a server, which is where most open-source approaches break. Billing that matches reality: one credit per successful response, with failed, blocked and empty results never charged. That last point matters on short-form video, where a meaningful share of any batch is music with no speech in it. There is also an MCP server, so AI agents can fetch transcripts as a tool without a custom integration.
TranscriptFetch's answer:
Developers and technical teams building on video and web content. The common cases are RAG and retrieval pipelines that need video as text, AI agents that need to read a link mid-conversation, content teams repurposing short-form video at scale, and media monitoring and research tools. It is an API first, so the buyer is usually the person writing the integration rather than an end user. The free browser tools exist for one-off transcripts and for evaluating output quality before writing any code.
TranscriptFetch's answer:
It started with discovering there is no good way to get the text of a video. YouTubeโs official Data API will confirm a caption track exists and then refuse to hand it over, because captions.download requires the video ownerโs OAuth token. The popular open-source libraries work until you deploy them, at which point platforms start refusing datacenter IPs. And YouTube is the easy case: TikTok and Instagram publish no caption file at all. Every workaround solved one platform, worked locally, and broke in production. TranscriptFetch is the version that handles the failure cases as first-class behaviour rather than edge cases.
TranscriptFetch's answer:
Next.js with TypeScript and Tailwind on the front end and API layer, Clerk for auth with SHA-256 hashed API keys, Neon Postgres with Drizzle ORM, Redis for caching, and Stripe for billing. The extraction layer is a Python and FastAPI service. Speech-to-text uses Whisper-class models. The MCP server is published in the official Model Context Protocol registry with a DNS-verified namespace.
Based on our record, Pygments seems to be more popular. It has been mentiond 11 times since March 2021. We are tracking product recommendations and mentions on various public social media platforms and blogs. They can help you identify which product is more popular and what people think of it.
Yep, and for syntax highlighting, I used the minted package [1]. Internally, minted uses the Pygments library [2]. [1] https://ctan.org/pkg/minted [2] https://pygments.org/. - Source: Hacker News / 8 months ago
Some starter ideas[0] beyond spacing/line numbers. BNF format is used to describe a programming language. treesitter as a text editor plug in makes use of a language BNF description to be able to know how to parse & format a given lanuage in a text editor (aka pygments[1], gnu source code hightlights, [2] neovim with treesitter[3]). Aka searching google "treesitter work with microsoft notepade" --- [0] :... - Source: Hacker News / almost 2 years ago
I suspect Pygments will be to your liking. https://pygments.org/. - Source: Hacker News / almost 3 years ago
It's not clear exactly what you want, but if you mean syntax highlighting, you could use pygments https://pygments.org/. Source: about 3 years ago
Https://pygments.org/ - never tried it though. Source: over 3 years ago
prism.js - Prism is a lightweight, extensible syntax highlighter, built with modern web standards in mind.
SocialFetch.dev - Social media scraping API for public profiles, posts, comments, videos, transcripts, and metrics from TikTok, Instagram, YouTube, X, LinkedIn, and more. Pay-as-you-go credits, 100 free to start.
highlight.js - Highlight.js is a syntax highlighter written in JavaScript. It works in the browser as well as on the server.
TranscriptAPI.com - Get YouTube video transcripts with a simple API call or through Model Context Protocol. Fast, reliable, and easy to integrate into your applications.
Bat - A cat(1) clone with wings.
fzf - A command-line fuzzy finder written in Go