Invidious

invidious.io
Invidious

An open source, privacy-focused YouTube frontend. It minimizes Google tracking, supports audio-only mode, integrates Reddit comments, and offers advanced playback options. Lightweight and can function without JavaScript. Supports import/export of subscriptions and feed customization.

Open Source

Invidious Source Code

Author

iv-org

Description

Invidious is an alternative front-end to YouTube

#agplv3#hacktoberfest#invidious#libre#video#watch#youtube#youtube-video

Homepage

https://invidious.io

License

AGPL-3.0

Created

07 Feb 18

Last Updated

12 Jul 26

Latest version

v2.20260626.0

Primary Language

Crystal

Size

25,875 KB

Stars

20,545

Forks

2,307

Watchers

20,545

Language Usage

Language Usage

Star History

Star History

Top Contributors

Recent Commits

  • TheFrenchGhosty (12 Jul 26)

    Various enhancements and rewording to the issues/PRs templates (#5804) * Various enhancements and rewording to the issues/PRs templates * Remove the "explain how" from the checkboxes since the explanation is below * Make the checkbox valid markdown so that they don't appear as text next to the rendered checked one * Add comma to make the sentences flow better * Consistency

  • TheFrenchGhosty (11 Jul 26)

    Add a field for AI policy compliance in the issues/PRs templates (#5803) * Convert issue templates to Issue Forms with AI policy disclosure Convert the 3 markdown issue templates (.md) to GitHub Issue Forms (.yml) to enable interactive form elements, and add an AI disclosure section per the AI Policy (AI_POLICY.md): - Required checkbox to acknowledge having read the AI Policy - Required dropdown for AI usage (none / fully / partially with explanation) - Optional input for model(s) used (open-weight examples in placeholder) - Optional input for tool(s) used (FOSS examples in placeholder) - Optional textarea to explain how AI was used (for the partial option) The existing template content and structure is preserved, only converted from markdown to the Issue Forms schema. * Align pull request template with AI policy disclosure Update the pull request template to match the AI disclosure standards introduced in the issue templates: - Use relative link to AI_POLICY.md instead of absolute GitHub URL - Update dropdown wording to match issue forms - Use open-weight models in placeholder examples - Use FOSS tools in placeholder examples - Add 'How was AI used?' section for the partial-usage explanation * Fix assignees field type in issue templates Use an empty array instead of an empty string for the assignees field, as required by the GitHub Issue Forms schema. * Enhance the PR template * Reword the issue templates to be consistent with the PR template * Enhance the PR template * Typo coming from the original template Co-authored-by: Copilot Autofix powered by AI <[email protected]> * Better wording for what comes from the original templates Co-authored-by: Copilot Autofix powered by AI <[email protected]> * Switch to full URLs since relative URL break inconsistently --------- Co-authored-by: Copilot Autofix powered by AI <[email protected]>

  • absidue (11 Jul 26)

    Fix videos being incorrectly labelled as isUpcoming = true (#5800)

  • dependabot[bot] (07 Jul 26)

    chore(deps): bump 84codes/crystal in /docker (#5797) Bumps 84codes/crystal from 1.20.2-alpine to 1.20.3-alpine. --- updated-dependencies: - dependency-name: 84codes/crystal dependency-version: 1.20.3-alpine dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

  • TheFrenchGhosty (04 Jul 26)

    Create AI_POLICY.md (#5791) * Create AI_POLICY.md * Add some more * Typo * Update AI_POLICY.md Co-authored-by: Émilien (perso) <[email protected]> * Various minor enhancements * Various small rewording * Add a line about it being mostly done by the maintainers --------- Co-authored-by: Émilien (perso) <[email protected]>

  • Fijxu (30 Jun 26)

    Add option to disable easy to abuse API endpoints (#5630) * Add option to disable easy to abuse API endpoints The API endpoints that will be disabled when this option are: - /api/v1/videos - /api/v1/clips - /api/v1/transcripts There is still API endponts that need some sort of validation or connection/proxying to Invidious companion like `/api/v1/captions` and `/api/v1/storyboards` since they also do a video request to Invidious companion. I'm not sure if the `/next` API endpoint could be used to gather that type of information, if so, that would be better. Closes #5599 * Rename configuration variable, add additional comment for the option

  • unrealtournament (30 Jun 26)

    [RefreshChannelsJob] Reduce backoff if no errors occur (#5759) * [RefreshChannelsJob] Reduce backoff if no errors occur * Change log level for backoff decrease

  • Émilien (perso) (30 Jun 26)

    fix: security issue playlist deletion cross user (#5790) fixes #5777

  • Fijxu (30 Jun 26)

    chore: update User-Agent header for Youtube requests (#5794)

  • dependabot[bot] (29 Jun 26)

    chore(deps): bump actions/cache from 5 to 6 (#5793) Bumps [actions/cache](https://github.com/actions/cache) from 5 to 6. - [Release notes](https://github.com/actions/cache/releases) - [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md) - [Commits](https://github.com/actions/cache/compare/v5...v6) --- updated-dependencies: - dependency-name: actions/cache dependency-version: '6' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

  • Emilien (27 Jun 26)

    Prepare for next release

  • Émilien (perso) (27 Jun 26)

    Release v2.20260626.0 (#5787) * Release v2.20260626.0 * chore: improve changelog x1 Co-authored-by: Fijxu <[email protected]> * chore: apply second suggestion Co-authored-by: Fijxu <[email protected]> --------- Co-authored-by: Fijxu <[email protected]>

  • Fijxu (25 Jun 26)

    fix: fix playlists not showing any videos due to outdated playlist parsing (#5774) * TODO, CHANGE COMMIT MESSAGE WHEN DONE * save * fix: fix playlists videos parsing * revert text * do not shadow outer item variable

  • dependabot[bot] (15 Jun 26)

    chore(deps): bump alpine from 3.23 to 3.24 in /docker (#5778) Bumps alpine from 3.23 to 3.24. --- updated-dependencies: - dependency-name: alpine dependency-version: '3.24' dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

  • Fijxu (15 Jun 26)

    fix: fix private invidious playlists on rss feeds from being fetched without authentication (#5776)

  • Jan Moesen (09 Jun 26)

    Use “www.youtube.com” consistently (#5768) Saves an unnecessary redirect by using `www.youtube.com` on some parts of Invidious where `youtube.com` was used instead. youtube.com will redirect to www.youtube.com anyways. Co-authored-by: janmoesen <@>

  • dependabot[bot] (09 Jun 26)

    chore(deps): bump int128/docker-manifest-create-action (#5766) Bumps [int128/docker-manifest-create-action](https://github.com/int128/docker-manifest-create-action) from 2.21.0 to 2.22.0. - [Release notes](https://github.com/int128/docker-manifest-create-action/releases) - [Commits](https://github.com/int128/docker-manifest-create-action/compare/v2.21.0...v2.22.0) --- updated-dependencies: - dependency-name: int128/docker-manifest-create-action dependency-version: 2.22.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

  • Fijxu (05 Jun 26)

    Revert "Fix: Restore whitespace formatting while keeping disable_abusable_api configuration" This reverts commit 8f279745db982959984e5953044ea4fa5f521ff3.

  • Fijxu (05 Jun 26)

    Fix: Restore whitespace formatting while keeping disable_abusable_api configuration

  • Fijxu (04 Jun 26)

    Add support for alternative domains for Invidious cookies (#5647) * Add support for alternative domains for Invidious cookies * check if @@secure is already true before changing it's value * Add alternative_domains config option example

  • Fijxu (03 Jun 26)

    Only include '&' if params are present (#5646)

  • Fijxu (30 May 26)

    Dockerfile: Switch to 84codes crystal compiler container image (#5473) Closes https://github.com/iv-org/invidious/issues/5456 The 84codes Crystal container image builds libgc (bdwgc) with `--enable-large-config`: https://github.com/84codes/crystal-packages/blob/b321bb4358b0140a63573d9d05ccf2f06c5ae040/alpine/Dockerfile#L13-L22

  • Fijxu (30 May 26)

    fix: Do not append query params `quality=medium` to videos that are about to premiere (#5755) * fix: Do not append query params `quality=medium` to videos that are about to premiere Video premieres do not have `audio_streams` and they aren't `video.live_now == true` either, therefore we skip the checks that are made for older videos (`if audio_streams.empty? && !video.live_now` closure) if the video is a premiere. This commit also adds the `microformat` field to the `info` instance variable of the `Video` struct, since it's needed for the function `Video#premiere_timestamp : Time?`. This is more like a quick fix than a proper fix because in `Invidious::Videos::Parser#parse_video_info`, `premiere_timestamp` is gathered from the `microformat` JSON Object but is used to set the `published` hash key for the `params` variable. The parsers and structs really need a rework :/ * Revert "fix: Do not append query params `quality=medium` to videos that are about to premiere" This reverts commit 5cfc8dace82590ea6a41c849c9c39b1b7ba95fe7. * chore: build premiere_timestamp using video_type and published time

  • Fijxu (30 May 26)

    Fix Youtube and Invidious links not rewinding their time when video timestamp is rewinded (#5601) Revert "Fix Youtube and Invidious links not rewinding their time when video timestamp is rewinded" This reverts commit c3ee8a5d90df83d6e53b78b6d6e9669729b391aa.

  • Fijxu (30 May 26)

    fix: fix wrong call to I18n.translate() function

  • Fijxu (30 May 26)

    feat: Add support for POST requests on searches for privacy (#5551) Use already set preferences variable Use span for description, grammar fix from Copilot

  • shiny-comic (28 May 26)

    Fix disappearing end of the comments with emoji (#5587) Previous code use UTF-8 to count characters however Emojis are UTF-16 units. This difference leads to misalignment of index offsets. Co-authored-by: shiny-comic <shiny-comic@winPC>

  • Fijxu (28 May 26)

    Encapsulate videos parser and clip functions inside it's own `Invidious::Videos::Parser` and `Invidious::Videos::Clip` module (#5745) Part of https://github.com/iv-org/invidious/issues/5744

  • Fijxu (28 May 26)

    fix: fix author verification in channels (#5751) * fix author verification in channels Fixes https://github.com/iv-org/invidious/issues/5730 Author verification badge is not longer located in `c4TabbedHeaderRenderer`. It may be deprecated. * Also detect AUDIO_BADGE for verified author

  • Fijxu (26 May 26)

    Add support for `/pl_c` and `/tvfilm_banner` paths (thumbnails used in some playlists) (#5742) * feat: add support for /pl_c/ images This path can be found on Podcast images. * add support for /pl_c and /tvfilm_banner paths * add support for /pl_c and /tvfilm_banner paths 2 * remove leftover comment

Invidious Security

5.1/10

Repo Security Summary

Updated 29 Jun 26

  • Maintained 10/10
  • Code-Review 4/10
  • Dangerous-Workflow 10/10
  • CII-Best-Practices 0/10
  • Token-Permissions 0/10
  • Binary-Artifacts 10/10
  • Security-Policy 0/10
  • Fuzzing 0/10
  • License 10/10
  • Signed-Releases N/A
  • Branch-Protection N/A
  • SAST 0/10
  • Pinned-Dependencies 0/10
  • Packaging 10/10

Invidious Website

Website

Invidious - An open source alternative front-end to YouTube

Invidious is an open source alternative front-end to YouTube.

Redirects

Does not redirect

Security Checks

All 65 security checks passed

Server Details

  • IP Address 93.95.230.186
  • Hostname vps-93-95-230-186.1984.is
  • Location Reykjavik, Hofudborgarsvaedi, Iceland, EU
  • ISP 1984 ehf
  • ASN AS44925

Associated Countries

  • BV BV
  • SE SE
  • IS IS
  • NO NO

Safety Score

Website marked as safe

100%

Blacklist Check

invidious.io was found on 0 blacklists

  • AntiSocial Blacklist
  • Artists Against 419
  • Badbitcoin
  • Bambenek Consulting
  • CERT Polska
  • CoinBlockerLists
  • CRDF
  • CryptoScamDB
  • EtherAddressLookup
  • EtherScamDB
  • Fake Website Buster
  • MetaMask EthPhishing
  • NABP Not Recommended Sites
  • OpenPhish
  • PetScams
  • PhishFeed
  • PhishFort
  • Phishing.Database
  • PhishStats
  • PhishTank
  • Phishunt
  • RPiList Not Serious
  • Scam.Directory
  • SecureReload Phishing List
  • Spam404
  • StopGunScams
  • Suspicious Hosting IP
  • ThreatFox
  • ThreatLog
  • TweetFeed
  • URLhaus
  • ViriBack C2 Tracker

Website Preview

Website preview

Invidious Docker

Container Info

Invidious

Invidious is an open source alternative front-end to YouTube.

#Multimedia

Run Command

docker run -d \
  

Compose File

version: 3.8

Invidious Reviews

More Proxy Sites

About the Data: Invidious

Change History

API

You can access Invidious's data programmatically via our API. Simply make a GET request to:

https://api.awesome-privacy.xyz/v1/services/invidious

The REST API is free, no-auth and CORS-enabled. To learn more, view the API Docs or read the API Usage Guide.

Share Invidious

Help your friends compare Proxy Sites, and pick privacy-respecting software and services.
Share Invidious and Awesome Privacy with your network!

View Proxy Sites (4)