{"id":28965916,"url":"https://github.com/devflowinc/youtube-transcribe","last_synced_at":"2025-09-04T13:39:02.664Z","repository":{"id":196414086,"uuid":"696043334","full_name":"devflowinc/youtube-transcribe","owner":"devflowinc","description":"Upload chunks from a Youtube Channel's videos to an Arguflow instance ","archived":false,"fork":false,"pushed_at":"2023-12-04T17:12:30.000Z","size":28,"stargazers_count":5,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-06-22T05:17:06.935Z","etag":null,"topics":["arguflow","embeddings","semantic-search","vector-retrieval","youtube","youtube-api","youtube-transcript","youtube-transcript-api","youtube-transcripts"],"latest_commit_sha":null,"homepage":"https://arguflow.ai","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/devflowinc.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2023-09-25T00:43:44.000Z","updated_at":"2024-07-17T05:45:34.000Z","dependencies_parsed_at":null,"dependency_job_id":"4a6d36cc-4414-4dc7-ae35-b222e324dea6","html_url":"https://github.com/devflowinc/youtube-transcribe","commit_stats":null,"previous_names":["arguflow/youtube-transcribe","devflowinc/youtube-transcribe"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/devflowinc/youtube-transcribe","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devflowinc%2Fyoutube-transcribe","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devflowinc%2Fyoutube-transcribe/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devflowinc%2Fyoutube-transcribe/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devflowinc%2Fyoutube-transcribe/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/devflowinc","download_url":"https://codeload.github.com/devflowinc/youtube-transcribe/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devflowinc%2Fyoutube-transcribe/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261624969,"owners_count":23186121,"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":["arguflow","embeddings","semantic-search","vector-retrieval","youtube","youtube-api","youtube-transcript","youtube-transcript-api","youtube-transcripts"],"created_at":"2025-06-24T07:10:34.230Z","updated_at":"2025-06-24T07:10:35.093Z","avatar_url":"https://github.com/devflowinc.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Upload chunks from a Youtube Channel's videos to Arguflow\n\n## Install\n\nInstall the Python packages\n\n```sh\npip install -r ./requirements.txt\n```\n\n## Deploy an Arguflow instance and REDIS\n\n[Follow the self-hosting guide here](https://docs.arguflow.ai/self_hosting)\n\nThe `script-redis` service in the Arguflow docker-compose is intended to be used with this. If you go that route your `REDIS_URL` env value will be something like `REDIS_URL=redis://:thisredispasswordisverysecureandcomplex@\u003cserver-ip-address\u003e:6380`. You can also use managed REDIS with something like [Render](https://render.com). \n\n## Get the CHANNEL_ID for the youtube channel you want to get transcripts from\n\nFind the URL of the channel you want to deploy Arguflow on top of then get the CHANNEL_ID with a tool like [Comment Picker](https://commentpicker.com/youtube-channel-id.php)\n\n## Set your ENV's\n\nThey should look something like: \n\n```\nCHANNEL_ID=UC0vBXGSyV14uvJ4hECDOl0Q\nYOUTUBE_API_KEY=***************************************\nREDIS_PASSWORD=thisredispasswordisverysecureandcomplex\nREDIS_URL=redis://:thisredispasswordisverysecureandcomplex@localhost:6380\nARGUFLOW_API_URL=http://localhost:8090/api\nARGUFLOW_API_KEY=af-********************************\n```\n\n## Add all of the video id's to a REDIS queue \n\n`python ./upload.py`\n\n## Second option to only add single video\n\n`python ./upload.py \u003cvideo_id\u003e`\n\n## Get the raw transcripts of the videos, punctuate them, then upload to your Arguflow instance \n\nYou should typically run at least 6 of `main.py` process in parallel. \n\n`python ./main.py`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevflowinc%2Fyoutube-transcribe","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdevflowinc%2Fyoutube-transcribe","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevflowinc%2Fyoutube-transcribe/lists"}