Website profiles · Technology insights · Alternatives

streamlink.github.io

A command-line utility that extracts streams from various services and pipes them into a video player of choice.

No paid content found
Visit website
Profile views 3 Outbound visits 1 Normal
Streamlink 8.6.2 documentation Full homepage screenshot

At a glance

Category
Development
Language
English
Paid-content signal
No paid content foundObserved
Registered
Unknown
Hosting
FastlyInferred
HTTPS certificate trusted
PassedObserved
Last updated

Website review

This review may include AI-generated content and is not individually verified. Domain, certificate and other facts come from the observed data on this page.

What is Streamlink?

Streamlink is a free, open-source command-line utility that takes a video stream from a supported service and pipes it directly into a video player such as VLC or mpv, instead of playing it in a browser. Its stated purpose is to avoid resource-heavy, unoptimized websites while still letting you watch streamed content. The project is a maintained fork of the discontinued Livestreamer and is distributed under a Simplified BSD license.

What it actually does

  • Extracts streams from services through a plugin system; the documentation names Twitch and YouTube among the popular supported services, with a full plugin list on its plugins page.
  • Hands playback to your player. By default it opens streams in VLC. A typical command is streamlink twitch.tv/CHANNEL best, which lists available qualities (from audio_only/worst up to best) and opens the chosen one.
  • Exposes a Python API for developers who want direct access to stream data rather than the CLI.

Who it suits

  • Viewers on weaker hardware who want a lightweight player instead of a busy web page—this is the core audience the tool is designed for.
  • People who prefer keyboard-driven, scriptable workflows over clicking through a site.
  • Developers building tools on top of stream data via the library API.

Trade-offs to weigh

It is a command-line tool, so there is a learning curve and no graphical interface; you also need a compatible player installed. Stream extraction depends on plugins, so support for a given service can vary or break when that service changes. If you mainly want a simple click-and-watch experience, a browser is easier; Streamlink pays off when you value low resource use, quality selection, and automation.

Next step

If you want to try it, check the User guide's installation section for your platform (Windows, macOS, Linux/BSD, or the PyPI package), then run the quickstart command above with a channel you follow and confirm VLC launches.

How do I install Streamlink on Windows, macOS, or Linux?

Streamlink installs differently on each platform: Windows has a standalone binary, macOS is easiest through Homebrew, and Linux varies by distribution or can use pipx. The project's own documentation lists Windows, macOS, Linux/BSD, PyPI, and source options, with a separate user guide for full instructions. All are free; Streamlink is Simplified BSD–licensed software.

Windows

Download the Windows binary from the official release page, unpack it, and run streamlink.exe from a terminal. There is no installer to step through, so keep the folder somewhere permanent and add it to your PATH if you want to call streamlink from any directory. VLC, the default player, should be installed first.

macOS

Homebrew is the least fussy route: brew install streamlink. If you prefer isolation or a specific version, use pipx install streamlink instead. Both avoid touching the system Python.

Linux and BSD

Check your distribution's package first (the docs have a package-availability section). If your distro lags behind, pipx install streamlink gives you the current release in its own environment. AppImages are also offered for a portable option.

Situation Best fit Trade-off
Windows, no Python Release binary Manual PATH setup; update by re-downloading
macOS, Homebrew user brew install streamlink Updates lag behind upstream releases
Any OS, want isolation pipx install streamlink Requires Python and pipx
Linux, stable distro Distro package Often an older version
Developer embedding streams PyPI library You manage dependencies yourself

Verify and try it

Run streamlink --version, then test with the documented example: streamlink twitch.tv/CHANNEL best. If streams open in VLC, the install is working. If the command isn't found, the binary folder or pipx bin directory isn't on your PATH — the most common first-run snag on Windows.

For developers, the same install provides the Python API, so no separate step is needed. The project's GitHub releases page and PyPI listing are the canonical places to confirm the current version before installing.

How can I play a Twitch or YouTube stream in VLC or mpv using Streamlink?

Use Streamlink's command line: give it a stream URL and a quality name, and it extracts the stream and opens it in your player. The default player is VLC, so streamlink twitch.tv/CHANNEL best finds the Twitch plugin, lists available qualities, and starts playback at the highest one. To use mpv instead, add --player mpv, or set it permanently in a configuration file so you do not repeat the flag.

Typical commands

  • Twitch, best quality in VLC: streamlink twitch.tv/CHANNEL best
  • Twitch in mpv: streamlink --player mpv twitch.tv/CHANNEL best
  • A specific quality: replace best with a listed name such as 720p60 or audio_only
  • YouTube: same form, e.g. streamlink "https://www.youtube.com/watch?v=ID" best

Run the command once without a quality (or check the "Available streams" line in the output) to see which names that particular stream offers; names differ between services and live versus recorded content. Quote URLs containing ? or & so your shell does not split them.

Who this suits

This is for people who want the stream in a lightweight player rather than a browser tab: lower memory and CPU use, keyboard-driven controls in mpv, or playback on a machine with a weak browser. It is less convenient if you rely on the website's chat, recommendations or account features, since those live in the browser, not the player. Streamlink's own documentation notes the project is a fork of the unmaintained Livestreamer and is free software under a Simplified BSD license.

Practical notes

  • Authentication: some streams (subscriber-only Twitch content, for example) need credentials passed via --twitch-oauth-token or similar plugin options; check the plugin's section in the documentation.
  • If playback fails, the likely causes are a stale plugin for a changed service, a missing player on your PATH, or a region-restricted stream.
  • Developers who want the stream data directly can use the Python API instead of the CLI.

As a next step, read the Quickstart and the plugin-specific pages at Streamlink documentation, and install mpv from mpv or VLC from VideoLAN if neither is present.

How do I configure Streamlink's settings with a configuration file?

Streamlink reads options from a configuration file so you don't have to type the same flags on every run. Put one option per line in a plain-text file, written the same way you'd write it on the command line but without the leading streamlink command. For example, a file containing:

player=mpv
player-args=--fullscreen
hls-live-edge=2

sets mpv as the player, passes it a fullscreen flag, and changes the live-edge buffer for HLS streams. Then run streamlink twitch.tv/CHANNEL best and those settings apply.

Where the file goes

Streamlink looks in a default location per platform (on Linux and macOS typically under ~/.config/streamlink/config, on Windows under %APPDATA%\streamlink\config), and it also accepts an explicit --config FILE argument to point at any file. If you keep several setups—say, a lightweight one for a laptop and a high-quality one for a desktop—separate config files selected with --config are cleaner than editing one file back and forth.

What belongs in it

Good candidates are stable preferences: your preferred player and player arguments, default stream sorting, proxy settings, and per-plugin options. Stream-specific choices like a resolution are better left on the command line, since they change per session. Because the file is read before command-line flags, anything you pass on the command line overrides the file—useful for one-off exceptions.

A practical next step

Start small: create the file with just player=mpv (or vlc), run one stream, and confirm the player opens. Then add one option at a time, checking the command-line reference for exact option names, so a typo doesn't silently fall back to defaults. If a setting seems ignored, verify you're editing the file Streamlink actually reads for your platform, or pass --config explicitly to remove the doubt.

For installation paths and platform-specific defaults, the project's own guide at Streamlink documentation is the authoritative reference; player-specific flags belong in the documentation for mpv or VLC.

How can I use Streamlink's Python API to access stream data programmatically?

Start with the library API, not the CLI. Streamlink's own overview says it ships two parts—a command-line tool and a library API—and that the API exists for developers who want direct access to stream data. In practice you import Streamlink in Python, resolve a URL to a plugin, list the available streams, then open one as a stream object and read from it or hand it to your own player/processing pipeline. The CLI example in the docs shows the same flow conceptually: it finds a matching plugin for the URL, prints the available streams (audio-only, 160p through 1080p60), and opens the best one via HLS.

A practical scenario

Suppose you want a small script that checks whether a channel is live, records the best quality to disk, or feeds audio into a transcriber. The library route lets you do that without shelling out to a subprocess and parsing log lines. Your script decides the quality, the output file, and what happens on errors—Streamlink only supplies the stream data.

Decision criteria

  • Use the CLI when you just want to watch in VLC or mpv, or schedule a simple recording. It already defaults to playing in VLC and handles plugin matching for you.
  • Use the Python API when you need programmatic control: selecting streams by name, post-processing, serving to a custom player, or integrating into a larger app.
  • Check plugin coverage first. Support comes from a plugin system, so a given service works only if a plugin exists. Confirm your target site is in the plugins list before designing around it.

Next step

Read the "library API" section of the User guide at Streamlink documentation for the exact classes and call signatures, and check the plugins page for your service. The project is free software under a Simplified BSD license, so you can inspect and adapt the source on GitHub if a plugin needs tweaking. For installing the package itself, PyPI lists the official distribution.

How do I add support for a new streaming service through Streamlink's plugin system?

Streamlink's plugin system is the mechanism for adding a new streaming service: you write a plugin that matches a service's URLs and resolves them to playable stream URLs, and the CLI or Python API then pipes those streams to a player. The documentation presents this as the project's core extension point, with plugins bundled for services such as Twitch and YouTube and a plugins page listing what ships by default. It does not, on the page shown, spell out the plugin-authoring steps, so treat the following as general guidance and check the plugin API reference in the user guide before writing code.

What a plugin has to do

A Streamlink plugin is a Python module that performs two jobs:

  • URL matching. Declare which URLs belong to the service, so streamlink <url> <quality> finds the right plugin automatically. The quickstart output shows this in action: the CLI reports "Found matching plugin twitch for URL twitch.tv/CHANNEL" before listing available qualities.
  • Stream resolution. Query the service and return the available streams with names and quality labels (the example lists audio_only, 160p (worst) through 1080p60 (best)), so the user can pick one or accept best.

Because the CLI and the library API are separate parts of Streamlink, a plugin you write is usable both from the command line and from Python code that wants the stream data directly.

A practical path to a first plugin

  1. Read the plugin section of the user guide and the plugin API reference for the required base class, URL-matching rules and stream-return format.
  2. Start from an existing bundled plugin for a service with a similar streaming setup (HLS vs. DASH, token handling, geo-restrictions) rather than from scratch.
  3. Develop with plugin sideloading, which the table of contents lists, so you can iterate on your plugin without modifying an installed package.
  4. Test with a real URL: streamlink <service-url> best should find your plugin, list qualities, and open the player (VLC by default) — or use --stream-url/the API if you want to inspect the resolved URL instead of playing it.

Decision criteria before you build

  • Is a plugin the right layer? If the service already exposes a direct stream URL, a generic player or yt-dlp-style tool may be enough; a plugin earns its keep when URL matching, authentication or quality enumeration need service-specific logic.
  • Maintenance cost. Service APIs and page structures change; a plugin is code you own and must fix when the service changes. Check whether an existing bundled plugin already covers the service before adding another.
  • Distribution. Sideloaded plugins are local to your setup; contributing upstream means following the project's contribution process on GitHub, where the repository, issue tracker and discussions live.

For the exact API contract, the plugin authoring section of the Streamlink documentation is the authoritative next read; the overview page is the orientation, not the reference.

Related questions

More questions →
How to Use Streamlink to Play a Stream from a URL

Run streamlink <URL> <quality> in a terminal, and Streamlink will resolve the URL through a matching plugin, list the available stream qualities, and open the selected one in VLC by default. For example, streamlink twitch.tv/CHANNEL best plays the highest available quality of that Twitch channel in VLC. This assumes Streamlink is already installed and VLC is available on your system — the documentation points to the User guide for installation instructions.

The basic command

The syntax is:

streamlink URL QUALITY
  • URL — the page address of the stream, such as twitch.tv/CHANNEL. Streamlink matches it against its plugin system, which supports popular services like Twitch, YouTube, and many others; the full list is on the plugins page.
  • QUALITY — the stream quality you want, such as best, worst, or a specific resolution like 720p.

The Quickstart example from the documentation:

$ streamlink twitch.tv/CHANNEL best
[cli][info] Found matching plugin twitch for URL twitch.tv/CHANNEL
[cli][info] Available streams: audio_only, 160p (worst), 360p, 480p, 720p, 720p60, 1080p60 (best)
[cli][info] Opening stream: 1080p60 (hls)
[cli][info] Starting player: vlc

Reading the output

The example shows the three things Streamlink reports before playback starts:

  1. Plugin match — Found matching plugin twitch for URL twitch.tv/CHANNEL confirms Streamlink recognized the service.
  2. Available streams — a list of qualities the stream offers, with (worst) and (best) labels marking the extremes. In the example these range from audio_only and 160p up to 1080p60.
  3. Selected stream and player — Opening stream: 1080p60 (hls) shows which quality was chosen, and Starting player: vlc shows the player being launched.

If you pick a quality that isn't listed, the available-streams line tells you what you can choose instead.

Default behavior and where to go next

By default, Streamlink plays streams in VLC. Its stated purpose is to avoid resource-heavy and unoptimized websites while still letting you watch streamed content. For installation steps, configuration files, plugin sideloading, proxy support, and other options, the documentation directs you to the User guide. Developers who want direct access to stream data can use the separate Python API.

Is Streamlink Free Software and Where Does It Come From?

Yes. Streamlink is free software released under the Simplified BSD license, and it is a fork of the no longer maintained Livestreamer project. The current release is 8.6.2, distributed through GitHub and PyPI. If your decision depends on license terms or long-term maintenance, those two facts—a permissive BSD license and an actively versioned fork—are the ones to check first.

License and project origin

The documentation states plainly that Streamlink is free software under the Simplified BSD license. That matters if you plan to bundle it, redistribute it, or build on its code: a BSD-style license is permissive, but you should still read the actual license text in the repository rather than relying on a summary.

The project describes itself as forked from Livestreamer, "which is no longer maintained." In practice, that means Streamlink is the maintained continuation of that codebase, not a separate tool that happens to look similar. If you find older guides or scripts referring to Livestreamer, treat them as historical and check whether the commands still apply to Streamlink 8.6.2.

Release and distribution channels

Item Where it is published
Latest release (8.6.2) github.com/streamlink/streamlink/releases/latest
Source and repository github.com/streamlink/streamlink
Bug reports github.com/streamlink/streamlink/issues
Discussion forum github.com/streamlink/streamlink/discussions
Chat Gitter/Matrix channel streamlink/streamlink:gitter.im
Python package pypi.org/project/streamlink/

The documentation lists installation paths for Windows, macOS, and Linux/BSD, including Windows binaries, Linux AppImages, a PyPI package, source distributions, and virtual environment installs. Which one fits you depends on your platform and whether you want a self-contained binary or a Python-managed install.

What the software actually does

Streamlink is a command-line utility that pipes video streams from various services into a video player such as VLC or mpv. Its stated purpose is to avoid resource-heavy and unoptimized websites while still letting you watch streamed content. Support for services comes from a plugin system, and the documentation says most popular services are covered, naming Twitch and YouTube as examples, with a full plugin list on the plugins page.

The default behavior is playback in VLC. The documented quickstart is:

$ streamlink twitch.tv/CHANNEL best
[cli][info] Found matching plugin twitch for URL twitch.tv/CHANNEL
[cli][info] Available streams: audio_only, 160p (worst), 360p, 480p, 720p, 720p60, 1080p60 (best)
[cli][info] Opening stream: 1080p60 (hls)
[cli][info] Starting player: vlc

The expected result: Streamlink matches a plugin to the URL, lists the quality options it found, opens the requested one (best here), and launches the player. If your player is not VLC, you will need to specify it—the documentation's command-line section covers player selection and configuration.

CLI versus Python API

Streamlink is made of two parts: a CLI and a library API. The CLI is what most users want for watching streams. The Python API is for developers who want programmatic access to stream data. If you are only playing streams, start with the CLI; if you are writing a tool that needs the stream information itself, the API is the relevant part.

Practical checks before adopting it

  • Confirm the license text in the repository if redistribution matters to you.
  • Use the 8.6.2 release or the PyPI package rather than an old Livestreamer install.
  • Check the plugins page for your specific service before assuming support.
  • Report problems through the issue tracker and check the discussions forum for existing answers.

The documentation does not state pricing or login requirements for the software itself, so do not assume either way from this page alone; verify against the release and installation pages if those details affect your decision.

What Is Streamlink and What Is It Used For?

Streamlink is a command-line utility that extracts video streams from supported services and pipes them into a video player such as VLC or mpv. Its stated purpose is to let you watch streamed content without loading resource-heavy, unoptimized websites. It is most useful if you already watch streams in a desktop player and want a lightweight, scriptable alternative to a browser tab; if you need a full browsing experience (chat, recommendations, account UI), Streamlink alone won't replace it.

How it works

Streamlink sits between a streaming service and your player. You give it a URL, it matches that URL to a plugin, asks the service for the available stream qualities, and then hands the stream you pick to a player.

The plugin system is the core mechanism: support for new services is added as plugins rather than being built into the core. The documentation states that most popular services are supported, naming Twitch and YouTube as examples, with a full list on the plugins page.

A concrete example from the documentation's Quickstart shows the whole flow in one command:

$ streamlink twitch.tv/CHANNEL best
[cli][info] Found matching plugin twitch for URL twitch.tv/CHANNEL
[cli][info] Available streams: audio_only, 160p (worst), 360p, 480p, 720p, 720p60, 1080p60 (best)
[cli][info] Opening stream: 1080p60 (hls)
[cli][info] Starting player: vlc

Read that output as the expected result of each step: the URL is matched to a plugin, the available qualities are listed, best resolves to the highest quality (1080p60 here), and the stream is opened in VLC, which is the default player.

What you get

  • A CLI and a library API. The documentation describes Streamlink as two parts: a command-line interface and a Python API for developers who want access to the stream data.
  • Quality selection by name. As in the example, you can request best, worst, or a specific quality such as 720p from the listed options.
  • A player of your choice. VLC is the default, and mpv is named as another option.
  • Free software under a Simplified BSD license, per the documentation.

When it fits, and when it doesn't

Your situation Does Streamlink fit?
You want to watch a supported stream in VLC or mpv instead of a browser Yes — this is the documented core use case
You want to script or automate stream playback Yes — it is a command-line tool with a Python API
You want to build an application around stream data Yes — via the Python API
You need chat, site navigation, or account features Not on its own — it pipes video to a player, it is not a browser
Your service isn't in the plugin list Check the plugins page first; support depends on a plugin existing

Practical notes before you start

  • Installation is a prerequisite. The documentation's table of contents lists installation paths for Windows, macOS, Linux and BSD, including Windows binaries, Linux AppImages, a PyPI package and source, and a virtual environment option. Pick the one matching your OS before trying the Quickstart command.
  • The project is actively maintained. The documentation covers release 8.6.2 and links to the GitHub releases page, issue tracker, and discussion forum. It was forked from Livestreamer, which the documentation notes is no longer maintained — so older Livestreamer instructions you find elsewhere may not apply.
  • Expect plugin-specific behavior. The docs separate general command-line usage from "Plugin specific usage," which suggests some services need extra options or authentication. Check the section for your service rather than assuming the Quickstart command works identically everywhere.

To go further, start with the User guide's installation section for your platform, then the Command-Line Interface tutorial and the plugins list for your specific service.

Which streaming services does Streamlink support?

Streamlink supports most popular streaming services through a plugin system, with Twitch, YouTube, and "many more" included in the standard installation. The complete list of bundled plugins is documented on the project's plugins page, and some services have their own usage notes in the plugin-specific section of the documentation. Because support is plugin-based, new services can be added without changing the core tool.

How the plugin system works

Streamlink is built on top of a plugin system that makes adding support for new services straightforward. When you pass a URL to the command line, Streamlink matches it to a plugin, which then resolves the available streams for that URL.

The Quickstart example in the documentation shows this matching step explicitly:

$ streamlink twitch.tv/CHANNEL best
[cli][info] Found matching plugin twitch for URL twitch.tv/CHANNEL
[cli][info] Available streams: audio_only, 160p (worst), 360p, 480p, 720p, 720p60, 1080p60 (best)
[cli][info] Opening stream: 1080p60 (hls)
[cli][info] Starting player: vlc

The "Found matching plugin" line tells you which plugin handled the URL. If no plugin matches, Streamlink cannot extract the stream — that is the practical boundary of what it supports.

Where to find the full list

The documentation's table of contents lists plugins alphabetically, starting with entries such as abematv, adultswim, albavision, aloula, app17, ard_mediathek, and artetv. The overview page points to a dedicated plugins page for the complete list of included plugins.

Two things are worth checking before assuming a service works:

  • The plugins page — confirms whether a plugin ships with the current release (8.6.2).
  • Plugin-specific usage notes — some services need extra arguments or have known limitations, documented separately from the general command-line usage.

What "supported" means in practice

A plugin existing does not guarantee every stream on that service is accessible. Streams may be limited by region, authentication requirements, or changes on the service side. The plugin-specific documentation is the place to check for such conditions, since the overview page only states that most popular services are supported.

If a service you need is missing, the plugin architecture is the reason it can be added — either by the project or through plugin sideloading, which the documentation covers as part of the command-line interface guide.

Related capabilities

Beyond service support, the documentation covers streaming protocols, proxy support, metadata, and a configuration file. There is also a Python API for developers who want direct access to stream data, separate from the command-line tool. Streamlink itself is free software under a Simplified BSD license, forked from the no-longer-maintained Livestreamer project.

What Is the Difference Between Streamlink's CLI and Its Python API?

Streamlink ships as two parts: a command-line interface (CLI) and a library API. Use the CLI when you want to open a stream URL and watch it in a video player such as VLC or mpv; use the Python API when you are writing code that needs programmatic access to stream data. Both are documented separately in the Streamlink 8.6.2 documentation, and both draw on the same plugin system that supports services like Twitch and YouTube.

The CLI: watch streams without the website

The CLI is the default entry point described in the docs. Its job is to take a stream URL, find the matching plugin, list the available qualities, and hand the selected stream to a player.

The documented quickstart shows the whole flow in one command:

streamlink twitch.tv/CHANNEL best

The expected output, per the documentation, looks like this:

[cli][info] Found matching plugin twitch for URL twitch.tv/CHANNEL
[cli][info] Available streams: audio_only, 160p (worst), 360p, 480p, 720p, 720p60, 1080p60 (best)
[cli][info] Opening stream: 1080p60 (hls)
[cli][info] Starting player: vlc

Reading that output tells you what the CLI does at each step:

  • Input: a service URL (twitch.tv/CHANNEL).
  • Action: Streamlink matches a plugin, queries the stream qualities, and opens the one you asked for (best).
  • Result: the stream is piped into the player — VLC by default — rather than played in a browser.

The stated purpose is to avoid resource-heavy and unoptimized websites while still letting you enjoy streamed content. The CLI also supports a configuration file, plugin sideloading, proxy support, and metadata handling, all covered in the Command-Line Interface section of the docs.

When the CLI is the right choice

  • You want to watch a stream now, in a desktop player.
  • You want to pick a specific quality from the list Streamlink reports.
  • You want repeatable behavior via a config file rather than writing code.

The Python API: stream data for developers

The documentation describes the library API as the part for "developers who want access to the stream data." That is the key distinction: the API is about getting at the data programmatically, not about launching a player for you.

The docs do not spell out API call signatures on the overview page; they point to the separate library API section for usage details. So the practical rule is: if your task is "write a script that inspects or processes streams," start in the API section, not the CLI section.

When the API is the right choice

  • You are building a tool or script that needs stream information inside your own code.
  • You want to integrate Streamlink's plugin-backed stream extraction into a larger Python program.
  • You do not need a video player launched as a side effect.

Side-by-side comparison

Dimension CLI Python API
Primary user Someone who wants to watch a stream Developers writing code
What it does Extracts a stream and pipes it to a player (VLC by default) Gives programmatic access to stream data
Typical input A service URL plus a quality name Code that calls the library
Visible result Player opens with the chosen stream Stream data available to your program
Documentation location Command-Line Interface section Library API section

Shared foundation: plugins

Neither part is a standalone scraper. Streamlink is built on a plugin system that makes support for new services easy to add, and the docs note that most popular services — Twitch, YouTube, and many more — are supported, with a full list on the plugins page. This matters for your decision only in one way: whichever interface you choose, the set of supported services is the same, so pick based on how you want to consume the stream, not on coverage.

How to decide

  1. If your goal is watching: use the CLI. Run streamlink <URL> <quality>, read the "Available streams" line to see valid quality names, and let it open your player.
  2. If your goal is building: use the Python API and follow the library API documentation for the actual interface.
  3. If you are unsure: the docs describe the CLI as the default behavior and place the quickstart there, so start with the CLI to confirm the service and quality work, then move to the API if you need the data in code.

For installation options — Windows, macOS, Linux and BSD, PyPI, virtual environments, and AppImages — and for in-depth CLI usage, the documentation directs readers to the User guide.

Website Overview

Several search or sharing settings need attention. Together they may make snippets, preview images or preferred URLs less consistent across platforms.

Domain and Registration

Unknown

DNS and Email

Nameservers are provided by Amazon Route 53, indicating managed DNS hosting. CAA records restrict which certificate authorities are authorized to issue certificates. No CNAME was found; the observed records resolve directly to addresses. No MX record was found. A conventional explicit inbound-mail route is not configured. The lowest observed DNS TTL is 2264 seconds.

TLS and Certificates

The certificate uses an RSA 2048-bit public key, offering broad client compatibility. The server supplied a complete certificate chain. No organization name is present in the certificate; the available fields are consistent with domain validation. The certificate was issued by Let's Encrypt, commonly associated with automated certificate services. The certificate's total validity is about 89 days, consistent with a short renewal cycle.

HTTP and Browser Security

The response lacks these common security headers: CSP, X-Content-Type-Options, Referrer-Policy, Permissions-Policy, clickjacking protection. CORS permits any origin to read this response. This is common for public resources; sensitive responses need narrower handling. No X-Powered-By header was found, reducing one common source of backend fingerprinting information. The x-cache, x-served-by, via response header indicates a CDN or caching proxy in the delivery path. No obvious internal addresses or debug information were found in the headers.

Technology Stack Analysis

The public page identifies Fastly without precise versions, leaving fewer clues for version-specific scanning.

Search and Social Sharing

No homepage meta description was detected, leaving snippet selection more dependent on page text. No homepage canonical URL was detected. If duplicate URLs exist, consolidation may be less explicit. Open Graph is partially configured; og:type is missing. The title has 30 characters, within a common display range. The observed directives allow indexing and link following.

Hosting and Email

DNSAmazon Route 53
HostingFastly
EmailUnknown
Approximate IP geolocation (inferred; a CDN or proxy may differ from the origin server) United States flagUnited States Inferred 185.199.108.153

Registration details

RDAP / WHOIS

Unknown

DNS records

DNS

TypeNameValueTTLPriority
Astreamlink.github.io185.199.108.1533600—
Astreamlink.github.io185.199.109.1533600—
Astreamlink.github.io185.199.110.1533600—
Astreamlink.github.io185.199.111.1533600—
AAAAstreamlink.github.io2606:50c0:8000::1533600—
AAAAstreamlink.github.io2606:50c0:8001::1533600—
AAAAstreamlink.github.io2606:50c0:8002::1533600—
AAAAstreamlink.github.io2606:50c0:8003::1533600—
NSgithub.iodns1.p05.nsone.net2264—
NSgithub.iodns2.p05.nsone.net2264—
NSgithub.iodns3.p05.nsone.net2264—
NSgithub.iodns4.p05.nsone.net2264—
NSgithub.ions-1339.awsdns-39.org2264—
NSgithub.ions-1622.awsdns-10.co.uk2264—
NSgithub.ions-393.awsdns-49.com2264—
NSgithub.ions-692.awsdns-22.net2264—
TXTgithub.iov=spf1 a -all3600—
CAAgithub.io0 issue "digicert.com"3600—
CAAgithub.io0 issue "letsencrypt.org"3600—
CAAgithub.io0 issue "sectigo.com"3600—
CAAgithub.io0 issuewild "digicert.com"3600—
CAAgithub.io0 issuewild "letsencrypt.org"3600—
CAAgithub.io0 issuewild "sectigo.com"3600—

TLS and certificates

TLS / SSL

AssessmentNormal configuration
Supported protocolsTLSv1.2、TLSv1.3
Negotiated protocolTLSv1.3
Certificate subject*.github.io
IssuerLet's Encrypt
Valid until2026-12-29T23:44 · Remaining when checked: 73 days
Verification detailsCertificate trust: Passed · Hostname match: Passed

HTTP response headers

HTTP

HeaderValue
content-typetext/html; charset=utf-8
cache-controlmax-age=600
serverGitHub.com
strict-transport-securitymax-age=31556952
access-control-allow-origin*

Identified technologies

Fastly

Pages, Search and Sharing

Meta descriptionNot detected
Canonical URLNot detected
LanguageEnglish (default)
Twitter CardNot detected

No robots.txt found

No sitemaps found

User reviews (0)

  • No reviews yet.