gitwtfhub

wtf is camlisted?

zenith605-2/camlisted — explained in plain English

Analysis updated 2026-05-18

23HTMLAudience · generalLicenseSetup · moderate

TL;DR

The code behind camlisted.com, a daily updated, categorized directory of live YouTube cams like traffic, beach, and wildlife feeds.

Mindmap

mindmap
  root((Camlisted))
    What it does
      Curates YouTube live cams
      Checks streams daily
      Removes dead links
    Tech stack
      Vanilla HTML JS
      Supabase Postgres
      GitHub Actions
    Use cases
      Browse live cams
      Self host own directory
      Study free tier architecture
    Audience
      General users
      Developers

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Why would anyone build with this?

REASON 1

Browse a curated, always fresh directory of live YouTube cams by category.

REASON 2

Run your own instance of the directory for a different niche of live streams.

REASON 3

Study a free tier architecture using GitHub Pages, Supabase, and GitHub Actions automation.

REASON 4

Submit, vote on, and favorite live cam links within the community layer.

What's in the stack?

HTMLJavaScriptSupabasePostgresGitHub ActionsGitHub Pages

How it stacks up

zenith605-2/camlisteddl-m9/llm180idlehandsdev/pps-watch
Stars232323
LanguageHTMLHTMLHTML
Setup difficultymoderateeasyhard
Complexity1/55/5
Audiencegeneraldevelopergeneral

Figures from each repo's GitHub metadata at analysis time.

How do you spin it up?

Difficulty · moderate Time to first run · 1h+

Requires a YouTube API key, a Supabase project with SQL migrations, and Google OAuth setup.

Wtf does this do

Camlisted is the code behind a website called camlisted.com that acts as a categorized directory of publicly available live cams on YouTube. Think traffic cameras, beach views, wildlife feeds, dashcams, and city street cameras. It never hosts or downloads any video itself, every entry simply links to or embeds the original stream that already exists on YouTube. The problem it solves is that searching YouTube directly for live cams is frustrating: results are cluttered, many streams have already gone offline, and there is no good way to browse by category. Camlisted automates that entire process. Every day it searches YouTube in around fifteen languages to discover new live cams, checks whether existing streams are still online, sorts them into one of twelve categories, and removes ones that have been offline for a week, though they can come back if the stream returns. Beyond the core directory, the site includes a community layer where people can sign in with Google, submit new cam links for review, upvote or downvote entries, save favorites with personal notes, leave comments, and see a leaderboard with membership tiers. There is also a moderation system with an approval queue and blocklists so removed content cannot resurface. The site supports five interface languages, infinite scrolling, filtering by quality and date, and exporting your favorites list. Behind the scenes, a simple frontend built with plain HTML, CSS, and JavaScript is hosted for free on GitHub Pages, while a Supabase project running Postgres handles the database, authentication, and permission rules. A single automation script runs once a day through GitHub Actions to do all the discovering, checking, and cleanup work, carefully budgeting its YouTube API calls to stay within the free daily quota. This project would interest anyone who wants to browse curated, working live cam streams without digging through YouTube search, and developers curious about building a low cost, serverless directory site using free tier tools like GitHub Pages and Supabase. The code is MIT licensed and free to reuse, though the video content itself belongs to the original YouTube creators.

Yoink these prompts

Prompt 1
Help me set up my own instance of this project with a Supabase project and YouTube API key.
Prompt 2
Explain how the daily discovery and liveness checking automation script works.
Prompt 3
Show me how to add a new cam category and its multilingual keyword classifier.
Prompt 4
Walk me through the Supabase Row Level Security setup used here for the community features.

Frequently asked questions

wtf is camlisted?

The code behind camlisted.com, a daily updated, categorized directory of live YouTube cams like traffic, beach, and wildlife feeds.

What language is camlisted written in?

Mainly HTML. The stack also includes HTML, JavaScript, Supabase.

How hard is camlisted to set up?

Setup difficulty is rated moderate, with roughly 1h+ to a first successful run.

Who is camlisted for?

Mainly general.

View the repo → Decode another repo

This repo across BitVibe Labs

Don't trust strangers blindly. Verify against the repo.