{"id":16252393,"url":"https://github.com/remarkablemark/youtube-loop","last_synced_at":"2025-08-13T23:32:38.515Z","repository":{"id":192470617,"uuid":"686786949","full_name":"remarkablemark/youtube-loop","owner":"remarkablemark","description":":tv: Loop YouTube videos.","archived":false,"fork":false,"pushed_at":"2024-10-29T09:44:24.000Z","size":3860,"stargazers_count":2,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-10-29T11:48:20.032Z","etag":null,"topics":["loop","preact","tailwind","tailwindcss","typescript","vite","website","youtube","youtube-loop"],"latest_commit_sha":null,"homepage":"https://b.remarkabl.org/youtube-loop","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/remarkablemark.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["remarkablemark"],"patreon":"remarkablemark","open_collective":null,"ko_fi":"remarkablemark","tidelift":null,"community_bridge":null,"liberapay":"remarkablemark","issuehunt":null,"otechie":null,"custom":["https://b.remarkabl.org/teespring"]}},"created_at":"2023-09-03T23:44:15.000Z","updated_at":"2024-10-29T09:43:55.000Z","dependencies_parsed_at":"2023-11-24T10:29:36.453Z","dependency_job_id":"57a563ab-ee1c-47bb-985a-719fed906bad","html_url":"https://github.com/remarkablemark/youtube-loop","commit_stats":null,"previous_names":["remarkablemark/youtube-loop"],"tags_count":6,"template":false,"template_full_name":"remarkablemark/vite-preact-ts-template","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/remarkablemark%2Fyoutube-loop","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/remarkablemark%2Fyoutube-loop/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/remarkablemark%2Fyoutube-loop/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/remarkablemark%2Fyoutube-loop/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/remarkablemark","download_url":"https://codeload.github.com/remarkablemark/youtube-loop/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":229787064,"owners_count":18124014,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["loop","preact","tailwind","tailwindcss","typescript","vite","website","youtube","youtube-loop"],"created_at":"2024-10-10T15:13:33.213Z","updated_at":"2024-12-15T06:07:00.685Z","avatar_url":"https://github.com/remarkablemark.png","language":"TypeScript","funding_links":["https://github.com/sponsors/remarkablemark","https://patreon.com/remarkablemark","https://ko-fi.com/remarkablemark","https://liberapay.com/remarkablemark","https://b.remarkabl.org/teespring"],"categories":[],"sub_categories":[],"readme":"# YouTube Loop\n\n[![version](https://badgen.net/github/release/remarkablemark/youtube-loop)](https://github.com/remarkablemark/youtube-loop/releases)\n[![cypress](https://github.com/remarkablemark/youtube-loop/actions/workflows/cypress.yml/badge.svg)](https://github.com/remarkablemark/youtube-loop/actions/workflows/cypress.yml)\n[![build](https://github.com/remarkablemark/youtube-loop/actions/workflows/build.yml/badge.svg)](https://github.com/remarkablemark/youtube-loop/actions/workflows/build.yml)\n\n📺 Loop YouTube videos: https://b.remarkabl.org/youtube-loop\n\nBuilt with:\n\n- [Preact](https://preactjs.com/)\n- [Tailwind CSS](https://tailwindcss.com/)\n- [zustand](https://github.com/pmndrs/zustand)\n- [react-youtube](https://github.com/tjallingt/react-youtube)\n- [youtube-video-id](https://github.com/remarkablemark/youtube-video-id)\n\nInspired by the [Replit](https://replit.com/@remarkablemark/YouTube-IFrame-player-API-loop).\n\n## Install\n\nClone the repository:\n\n```sh\ngit clone https://github.com/remarkablemark/youtube-loop.git\ncd youtube-loop\n```\n\nInstall the dependencies:\n\n```sh\nnpm install\n```\n\n## Run\n\n## Available Scripts\n\nIn the project directory, you can run:\n\n### `npm start`\n\nRuns the app in the development mode.\n\nOpen [http://127.0.0.1:5173](http://127.0.0.1:5173) to view it in the browser.\n\nThe page will reload if you make edits.\n\nYou will also see any errors in the console.\n\n### `npm run build`\n\nBuilds the app for production to the `dist` folder.\n\nIt correctly bundles in production mode and optimizes the build for the best performance.\n\nThe build is minified and the filenames include the hashes.\n\nYour app is ready to be deployed!\n\n### `npm run lint`\n\nLints the codebase with ESLint.\n\n## License\n\n[MIT](LICENSE)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fremarkablemark%2Fyoutube-loop","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fremarkablemark%2Fyoutube-loop","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fremarkablemark%2Fyoutube-loop/lists"}