wukko: we've got you surrounded! come use the centralized website endpoint with your own api!
me, screaming: i hate cloudflare! i hate cloudflare!
bilibilicollaborationdownloaderinstagraminstagram-reelsmusicredditsocial-mediasoundcloudtiktoktwittervideovimeovinevkwebappyoutubeyoutube-music
e9a67e1f48
- full support for douyin (no watermark) - fixed up some tiktok stuff in the module |
||
---|---|---|
src | ||
.gitignore | ||
jsconfig.json | ||
LICENSE | ||
package.json | ||
README.md |
cobalt
Sleek and easy to use social media downloader built on JavaScript. Try it out live: co.wukko.me!
What is cobalt?
cobalt aims to be the ultimate social media downloader, that is efficient, pretty, and doesn't bother you with ads or privacy invasion agreement popups.
cobalt doesn't remux any videos, so you get videos of max quality available (unless you change that in settings).
What's supported?
- TikTok
- YouTube and YouTube Music
- bilibili.com
- VK
TO-DO
- niconico support
- douyin support
- Instagram support
- Quality switching for bilibili and Twitter
- Language picker in settings
- Make cobalt fully PWA compatible (add a service worker)
- Make switch buttons in settings selectable with keyboard
- Remake page rendering module to be more versatile
- Matching could be redone, I'll see what I can do
Disclaimer
This is my passion project, so update scheduele depends on my motivation. Don't expect any consistency in that.
Host an instance yourself
Code might be a little messy, but I do my best to improve it with every commit.
Requirements
- Node.js 14.16 or above
- git
npm modules
- cors
- dotenv
- express
- express-rate-limit
- ffmpeg-static
- got
- node-cache
- url-pattern
- xml-js
- ytdl-core
Setup script installs all needed npm dependencies, but you have to install Node.js and git yourself, if you don't have those already.
- Clone the repo:
git clone https://github.com/wukko/cobalt
- Run setup script and follow instructions:
npm run setup
- Run cobalt via
npm start
- Done.
License
cobalt is under AGPL-3.0 license, please keep that in mind.