mirror of
https://github.com/wukko/cobalt.git
synced 2024-11-15 04:39:58 +00:00
repo: update readme & remove old docs
This commit is contained in:
parent
51adfc85cd
commit
c494850cff
7 changed files with 24 additions and 127 deletions
114
README.md
114
README.md
|
@ -15,108 +15,42 @@
|
||||||
💬 community discord server
|
💬 community discord server
|
||||||
</a>
|
</a>
|
||||||
<a href="https://x.com/justusecobalt">
|
<a href="https://x.com/justusecobalt">
|
||||||
🐦 twitter/x
|
🐦 twitter
|
||||||
</a>
|
</a>
|
||||||
</p>
|
</p>
|
||||||
<br/>
|
<br/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
cobalt is a media downloader that doesn't piss you off. it's fast, friendly, and doesn't have any bullshit that modern web is filled with: ***no ads, trackers, or paywalls***.
|
cobalt is a media downloader that doesn't piss you off. it's friendly, efficient, and doesn't have ads, trackers, paywalls or other nonsense.
|
||||||
|
|
||||||
paste the link, get the file, move on. it's that simple. just how it should be.
|
paste the link, get the file, move on. that simple, just how it should be.
|
||||||
|
|
||||||
### supported services
|
### cobalt monorepo
|
||||||
this list is not final and keeps expanding over time. if support for a service you want is missing, create an issue (or a pull request 👀).
|
this monorepo includes source code for api, frontend, and related packages:
|
||||||
|
- [api tree](/api/)
|
||||||
|
- [web tree](/web/)
|
||||||
|
- [packages tree](/packages/)
|
||||||
|
|
||||||
| service | video + audio | only audio | only video | metadata | rich file names |
|
it also includes documentation in the [docs tree](/docs/):
|
||||||
| :-------- | :-----------: | :--------: | :--------: | :------: | :-------------: |
|
- [how to run a cobalt instance](/docs/run-an-instance.md)
|
||||||
| bilibili | ✅ | ✅ | ✅ | ➖ | ➖ |
|
- [how to protect a cobalt instance](/docs/protect-an-instance.md)
|
||||||
| bluesky | ✅ | ✅ | ✅ | ➖ | ➖ |
|
- [cobalt api documentation](/docs/api.md)
|
||||||
| dailymotion | ✅ | ✅ | ✅ | ✅ | ✅ |
|
|
||||||
| instagram | ✅ | ✅ | ✅ | ➖ | ➖ |
|
|
||||||
| facebook | ✅ | ❌ | ✅ | ➖ | ➖ |
|
|
||||||
| loom | ✅ | ❌ | ✅ | ✅ | ➖ |
|
|
||||||
| ok.ru | ✅ | ❌ | ✅ | ✅ | ✅ |
|
|
||||||
| pinterest | ✅ | ✅ | ✅ | ➖ | ➖ |
|
|
||||||
| reddit | ✅ | ✅ | ✅ | ❌ | ❌ |
|
|
||||||
| rutube | ✅ | ✅ | ✅ | ✅ | ✅ |
|
|
||||||
| snapchat | ✅ | ✅ | ✅ | ➖ | ➖ |
|
|
||||||
| soundcloud | ➖ | ✅ | ➖ | ✅ | ✅ |
|
|
||||||
| streamable | ✅ | ✅ | ✅ | ➖ | ➖ |
|
|
||||||
| tiktok | ✅ | ✅ | ✅ | ❌ | ❌ |
|
|
||||||
| tumblr | ✅ | ✅ | ✅ | ➖ | ➖ |
|
|
||||||
| twitch clips | ✅ | ✅ | ✅ | ✅ | ✅ |
|
|
||||||
| twitter/x | ✅ | ✅ | ✅ | ➖ | ➖ |
|
|
||||||
| vimeo | ✅ | ✅ | ✅ | ✅ | ✅ |
|
|
||||||
| vine | ✅ | ✅ | ✅ | ➖ | ➖ |
|
|
||||||
| vk videos & clips | ✅ | ❌ | ✅ | ✅ | ✅ |
|
|
||||||
| youtube | ✅ | ✅ | ✅ | ✅ | ✅ |
|
|
||||||
|
|
||||||
| emoji | meaning |
|
|
||||||
| :-----: | :---------------------- |
|
|
||||||
| ✅ | supported |
|
|
||||||
| ➖ | impossible/unreasonable |
|
|
||||||
| ❌ | not supported |
|
|
||||||
|
|
||||||
### additional notes or features (per service)
|
|
||||||
| service | notes or features |
|
|
||||||
| :-------- | :----- |
|
|
||||||
| instagram | supports reels, photos, and videos. lets you pick what to save from multi-media posts. |
|
|
||||||
| facebook | supports public accessible videos content only. |
|
|
||||||
| pinterest | supports photos, gifs, videos and stories. |
|
|
||||||
| reddit | supports gifs and videos. |
|
|
||||||
| snapchat | supports spotlights and stories. lets you pick what to save from stories. |
|
|
||||||
| rutube | supports yappy & private links. |
|
|
||||||
| soundcloud | supports private links. |
|
|
||||||
| tiktok | supports videos with or without watermark, images from slideshow without watermark, and full (original) audios. |
|
|
||||||
| twitter/x | lets you pick what to save from multi-media posts. may not be 100% reliable due to current management. |
|
|
||||||
| vimeo | audio downloads are only available for dash. |
|
|
||||||
| youtube | supports videos, music, and shorts. 8K, 4K, HDR, VR, and high FPS videos. rich metadata & dubs. h264/av1/vp9 codecs. |
|
|
||||||
|
|
||||||
### partners
|
### partners
|
||||||
cobalt is sponsored by [royalehosting.net](https://royalehosting.net/?partner=cobalt), all main instances are currently hosted on their network :)
|
cobalt is sponsored by [royalehosting.net](https://royalehosting.net/?partner=cobalt) and the main processing instance is hosted on their network. we really appreciate their kindness!
|
||||||
|
|
||||||
### ethics and disclaimer
|
### ethics
|
||||||
cobalt is a tool for easing content downloads from internet and takes ***zero liability***. you are responsible for what you download, how you use and distribute that content. please be mindful when using content of others and always credit original creators. fair use and credits benefit everyone.
|
cobalt is a tool that makes downloading public content easier. it takes **zero liability**.
|
||||||
|
the end user is responsible for what they download, how they use and distribute that content.
|
||||||
|
cobalt never caches any content, it [works like a fancy proxy](/api/src/stream/).
|
||||||
|
|
||||||
cobalt is ***NOT*** a piracy tool and cannot be used as such. it can only download free, publicly accessible content. such content can be easily downloaded through any browser's dev tools. pressing one button is easier, so i made a convenient, ad-less tool for such repeated actions.
|
cobalt is in no way a piracy tool and cannot be used as such.
|
||||||
|
it can only download free & publicly accessible content.
|
||||||
|
same content can be downloaded via dev tools of any modern web browser.
|
||||||
|
|
||||||
### cobalt license
|
### contributing
|
||||||
|
thank you for considering making a contribution to cobalt! please check the [contributing guidelines here](/CONTRIBUTING.md) before making a pull request.
|
||||||
|
|
||||||
|
### licenses
|
||||||
for relevant licensing information, see the [api](api/README.md) and [web](web/README.md) READMEs.
|
for relevant licensing information, see the [api](api/README.md) and [web](web/README.md) READMEs.
|
||||||
unless specified otherwise, the remainder of this repository is licensed under [AGPL-3.0](LICENSE).
|
unless specified otherwise, the remainder of this repository is licensed under [AGPL-3.0](LICENSE).
|
||||||
|
|
||||||
## acknowledgements
|
|
||||||
### ffmpeg
|
|
||||||
cobalt heavily relies on ffmpeg for converting and merging media files. it's an absolutely amazing piece of software offered for anyone for free, yet doesn't receive as much credit as it should.
|
|
||||||
|
|
||||||
you can [support ffmpeg here](https://ffmpeg.org/donations.html)!
|
|
||||||
|
|
||||||
#### ffmpeg-static
|
|
||||||
we use [ffmpeg-static](https://github.com/eugeneware/ffmpeg-static) to get binaries for ffmpeg depending on the platform.
|
|
||||||
|
|
||||||
you can support the developer via various methods listed on their github page! (linked above)
|
|
||||||
|
|
||||||
### youtube.js
|
|
||||||
cobalt relies on [youtube.js](https://github.com/LuanRT/YouTube.js) for interacting with the innertube api, it wouldn't have been possible without it.
|
|
||||||
|
|
||||||
you can support the developer via various methods listed on their github page! (linked above)
|
|
||||||
|
|
||||||
### many others
|
|
||||||
cobalt also depends on:
|
|
||||||
|
|
||||||
- [content-disposition-header](https://www.npmjs.com/package/content-disposition-header) to simplify the provision of `content-disposition` headers.
|
|
||||||
- [cors](https://www.npmjs.com/package/cors) to manage cross-origin resource sharing within expressjs.
|
|
||||||
- [dotenv](https://www.npmjs.com/package/dotenv) to load environment variables from the `.env` file.
|
|
||||||
- [esbuild](https://www.npmjs.com/package/esbuild) to minify the frontend files.
|
|
||||||
- [express](https://www.npmjs.com/package/express) as the backbone of cobalt servers.
|
|
||||||
- [express-rate-limit](https://www.npmjs.com/package/express-rate-limit) to rate limit api endpoints.
|
|
||||||
- [hls-parser](https://www.npmjs.com/package/hls-parser) to parse `m3u8` playlists for certain services.
|
|
||||||
- [ipaddr.js](https://www.npmjs.com/package/ipaddr.js) to parse ip addresses (for rate limiting).
|
|
||||||
- [nanoid](https://www.npmjs.com/package/nanoid) to generate unique (temporary) identifiers for each requested stream.
|
|
||||||
- [node-cache](https://www.npmjs.com/package/node-cache) to cache stream info in server ram for a limited amount of time.
|
|
||||||
- [psl](https://www.npmjs.com/package/psl) as the domain name parser.
|
|
||||||
- [set-cookie-parser](https://www.npmjs.com/package/set-cookie-parser) to parse cookies that cobalt receives from certain services.
|
|
||||||
- [undici](https://www.npmjs.com/package/undici) for making http requests.
|
|
||||||
- [url-pattern](https://www.npmjs.com/package/url-pattern) to match provided links with supported patterns.
|
|
||||||
|
|
||||||
...and many other packages that these packages rely on.
|
|
||||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 4.1 KiB |
Binary file not shown.
Before Width: | Height: | Size: 18 KiB |
Binary file not shown.
Before Width: | Height: | Size: 6.7 KiB |
Binary file not shown.
Before Width: | Height: | Size: 18 KiB |
Binary file not shown.
Before Width: | Height: | Size: 17 KiB |
|
@ -1,37 +0,0 @@
|
||||||
# self-troubleshooting cobalt
|
|
||||||
```
|
|
||||||
🚧 this page is work-in-progress. expect more guides to be added in the future!
|
|
||||||
```
|
|
||||||
if any issues occur while using cobalt, you can fix many of them yourself. this document aims to provide guides on how to fix most complicated of them.
|
|
||||||
use wiki navigation on right to jump between solutions.
|
|
||||||
|
|
||||||
## how to fix clipboard pasting in older versions of firefox
|
|
||||||
```
|
|
||||||
🎉 firefox finally supports pasting by default starting from version 125.
|
|
||||||
|
|
||||||
👍 you don't need to follow this tutorial if you're on the latest version of firefox.
|
|
||||||
```
|
|
||||||
you can fix this issue by changing a single preference in `about:config`.
|
|
||||||
|
|
||||||
### steps to enable clipboard functionality
|
|
||||||
1. go to `about:config`:
|
|
||||||
![screenshot showing about:config entered into address bar](images/troubleshooting/clipboard/config.png)
|
|
||||||
|
|
||||||
2. if asked, read what firefox has to say and press "accept the risk and continue".
|
|
||||||
⚠ tinkering with other preferences may break your browser. **do not** edit them unless you know what you're doing.
|
|
||||||
|
|
||||||
![screenshot showing about:config security warning that reads: "proceed with caution. changing advanced configuration preferences can impact firefox performance or security." lower there's a pre-checked checkbox that says: "warn me when i attempt to access these preferences". lowest element is a blue button that says "accept the risk and continue"](images/troubleshooting/clipboard/risk.png)
|
|
||||||
|
|
||||||
3. search for `dom.events.asyncClipboard.readText`
|
|
||||||
|
|
||||||
![screenshot showing "dom.events.asyncclipboard.readtext" entered into search on about:config page](images/troubleshooting/clipboard/search.png)
|
|
||||||
|
|
||||||
4. press the toggle button on very right.
|
|
||||||
|
|
||||||
![screenshot showing "dom.events.asyncclipboard.readtext" preference on about:config page with highlighted toggle button on very right](images/troubleshooting/clipboard/toggle.png)
|
|
||||||
|
|
||||||
5. "false" should change to "true".
|
|
||||||
|
|
||||||
![screenshot showing "dom.events.asyncclipboard.readtext" preference on about:config page, this one with "true" text highlighted](images/troubleshooting/clipboard/toggled.png)
|
|
||||||
|
|
||||||
6. go back to cobalt, reload the page, press `paste` button again. this time it works! enjoy simpler downloading experience :)
|
|
Loading…
Reference in a new issue