{"id":15093469,"url":"https://github.com/foxscore/dytdl","last_synced_at":"2025-10-06T12:31:52.705Z","repository":{"id":143749249,"uuid":"446600530","full_name":"foxscore/dytdl","owner":"foxscore","description":"A Discord bot for downloading YouTube videos as MP3/MP4 files","archived":true,"fork":false,"pushed_at":"2022-01-11T00:59:43.000Z","size":20,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-17T13:15:28.615Z","etag":null,"topics":["bot","discord","nodejs"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/foxscore.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-01-10T22:23:47.000Z","updated_at":"2024-04-03T01:24:22.000Z","dependencies_parsed_at":null,"dependency_job_id":"7ad0bc6f-d800-448f-94ed-909304a41012","html_url":"https://github.com/foxscore/dytdl","commit_stats":{"total_commits":2,"total_committers":1,"mean_commits":2.0,"dds":0.0,"last_synced_commit":"8b2bfdffbe5e884667adc9cee50d9f501f809aad"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/foxscore%2Fdytdl","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/foxscore%2Fdytdl/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/foxscore%2Fdytdl/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/foxscore%2Fdytdl/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/foxscore","download_url":"https://codeload.github.com/foxscore/dytdl/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":235527720,"owners_count":19004370,"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":["bot","discord","nodejs"],"created_at":"2024-09-25T11:23:28.670Z","updated_at":"2025-10-06T12:31:52.368Z","avatar_url":"https://github.com/foxscore.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# DYTDL - DiscordYouTubeDownload\nA Discord bot for downloading YouTube videos as MP3/MP4 files\n\n\n\n## Requirements\nFor this bot to work you will need the following\n- A Google account _(for the Google Cloud API)_\n- A Discord account _(for the application)_\n- A server where you can both host your app and the content downloaded\n\n\n\n## Setup\n\n- Make sure that the following tools are installed on your target machine:\n    - git\n    - ffmpeg\n    - nodeJs _(version \u003e= 16.6.0)_\n\n- Have a web-server ready _(Apache, NGINX, etc.)_ that disallows directory browsing, access to the `.htaccess` file, and access to all files ending with `.meta`, for the directory where you intent to store the downloaded audio/video files\n\n### Google Cloud API\n- Head to the [Google Cloud Console](https://console.cloud.google.com/apis/credentials)\n- Create a new application _(if necessary)_\n- Create a new `API key` and write it down\n\n### Discord\n- Head over to your [Discord applications](https://discord.com/developers/applications/)\n- Create a new application\n- Write down your Application ID\n- Head to the Bot section and click on the `Add Bot` button\n- Copy your token and write it down as well\n- Customize the name/icon to your liking\n\n### Installation\n- Open a terminal\n- Run the following commands in order\n    - `git clone https://github.com/foxscore/dytdl.git`\n    - `cd dytdl`\n    - `npm i`\n- Create a config.json file with the following variables:\n    Template: _[config.json](###config.json)_\n    |                     |                                                          |\n    |--------------------:|:---------------------------------------------------------|\n    |          **apiKey** | Google Cloud Application API Key                         |\n    | **storageLocation** | Where the files should be downloaded to                  |\n    |     **contentHost** | The base URL from where to access the downloaded content |\n    |        **clientId** | The ID of your Discord application                       |\n    |           **token** | The token of your Discord bot                            |\n    |      **inviteLink** | The invite URL for your bot _(unused)_                   |\n- Run `node index.js` to start it up\n\n### Invite it\nAdd your client id at the end of the following URL, open it in your browser, and add the app to whichever server you want.\n\n`https://discord.com/oauth2/authorize?scope=applications.commands\u0026permissions=0\u0026client_id=`\n\n## Templates\n### config.json\n```json\n{\n  \"apiKey\": \"GOOGLE_CLOUD_API_KEY\",\n\n  \"storageLocation\": \"STORAGE_LOCATION\",\n  \"contentHost\": \"BASE_URL\",\n\n  \"clientId\": APP_ID,\n  \"token\": \"APP_TOKEN\",\n  \"inviteLink\": \"INVITE_LINK\"\n}\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffoxscore%2Fdytdl","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffoxscore%2Fdytdl","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffoxscore%2Fdytdl/lists"}