Compare commits
3 Commits
dev-style-
...
546039aa43
| Author | SHA1 | Date | |
|---|---|---|---|
| 546039aa43 | |||
| e6196ce078 | |||
| eecd5444a6 |
48
README.md
@@ -1,13 +1,41 @@
|
||||
# Caldwell Digital - Symfony Template
|
||||
Get up and running quickly with this Symfony framework template!
|
||||
# Torsearch
|
||||
Torsearch is a "media acquisition tool" that works strictly with Real Debrid. Torsearch makes it easy to search for
|
||||
and download your favorite movies and tv shows. You can think of it like Stremio, but without the streaming. Why the
|
||||
comparison to Stremio? That's because Torsearch uses the same source for media files that Stremio uses: Torrentio
|
||||
(hence the name: Torsearch).
|
||||
|
||||
After two failed attempts at running a media server, I decided to hang up my hat and give up on my dream of a self-hosted
|
||||
media server. I figured the days of torrenting were mostly over and everybody ranting & raving about their media collections
|
||||
must be going to Walmart and buying up the bucket of old movies they have. That is until I stumbled across Stremio and
|
||||
bookmarked it to read about after I got frustrated with whatever project I was working on at the time.
|
||||
|
||||
Cue the day I got frustrated enough with that project and finally looked into Stremio. At first, it seemed too good to
|
||||
be true, but I was yearning for something just sketchy enough to try out. What could go wrong with handing over my card information
|
||||
to an unknown organization across the pond? At the end of the day, the cost benefit analysis landed in my favor, and about
|
||||
30 minutes after purchasing my Real Debrid subscription and setting up Stremio on my laptop, I was in business.
|
||||
|
||||
My mind was blown. I might not have the most "cultured" taste in media, but it had everything I searched for! After
|
||||
watching a few movies, I noticed the "Copy Download Link" button. "What's this lil guy do?" I asked myself. Duh, it
|
||||
downloads the fricking movie. And there's the 💡flashing over my head. There's gotta be a way to automate this, I told myself.
|
||||
|
||||
After about a month of studying Stremio's code and lots of tinkering, I figured it out. Torrentio is the magic behind
|
||||
the scenes. You feed it a Real Debrid API key and an IMDB ID, and it gives you a list of results to download that media. Easy peasy.
|
||||
|
||||
In about an hour I had a proof of concept working. It wasn't pretty, but it wasn't supposed to be. That proof-of-concept
|
||||
has blossomed into the beautiful Torsearch that I've been using nearly every day since then. The code in this repo
|
||||
is a complete re-write of the proof-of-concept that started out ugly and ended up even uglier. Knowing the core functionality
|
||||
required to make it work, I was able to re-write the app with some design patterns in place. It's now less ugly and quite
|
||||
functional. If you dig deep enough, you'll stumble across some of that ugly code that surprisingly still works (why fix it if ain't broke?).
|
||||
|
||||
## Pics or didn't happen
|
||||
|
||||
|
||||
## Features
|
||||
- Search for Movies & TV Shows by their name
|
||||
- Download directly to your NAS
|
||||
- Monitor TV Shows for new episodes and automatically download them
|
||||
- Browse popular media and click into it to view download options
|
||||
|
||||
## Getting Started
|
||||
1. Run `source bash/get_certs.sh` to grab the wildcard certs
|
||||
2. Set the docker image tag in the `bash/build.sh` file
|
||||
3. Set the docker image tag in the `deploy.compose.yml` file
|
||||
4. run `composer install`
|
||||
1. Clone the repo
|
||||
|
||||
## Optional steps
|
||||
1. Set phing vars
|
||||
2. Update the project name in `build.xml`
|
||||
3. Set a custom development hostname in `bash/vhost.conf`
|
||||
|
||||
BIN
docs/img/torsearch_filter_download.png
Normal file
|
After Width: | Height: | Size: 200 KiB |
BIN
docs/img/torsearch_homepage.png
Normal file
|
After Width: | Height: | Size: 421 KiB |
BIN
docs/img/torsearch_inception_results.png
Normal file
|
After Width: | Height: | Size: 654 KiB |
BIN
docs/img/torsearch_monitor.png
Normal file
|
After Width: | Height: | Size: 24 KiB |
BIN
docs/img/torsearch_severance.png
Normal file
|
After Width: | Height: | Size: 568 KiB |
BIN
docs/img/torsearch_severance_episodes.png
Normal file
|
After Width: | Height: | Size: 889 KiB |
BIN
docs/img/torsearch_severance_media.png
Normal file
|
After Width: | Height: | Size: 643 KiB |
BIN
docs/img/torsearch_severance_results.png
Normal file
|
After Width: | Height: | Size: 438 KiB |
@@ -31,9 +31,9 @@
|
||||
{{ entity.title }}
|
||||
</td>
|
||||
<td class="px-6 py-4 whitespace-nowrap text-sm text-end text-gray-800 dark:text-gray-50">
|
||||
<span class="p-1.5 bg-purple-600 rounded-full">
|
||||
<span class="mw-4 inline-block text-center text-gray-50">{{ entity.progress }}</span>
|
||||
</span>
|
||||
<div class="border-2 border-green-700 rounded-md w-full h-6 align-middle overflow-hidden">
|
||||
<div class="text-green-700 rounded-sm text-bold text-gray-950 text-center bg-green-600 h-5" style="width:{{ entity.progress }}%">{{ entity.progress }}%</div>
|
||||
</div>
|
||||
</td>
|
||||
</template>
|
||||
</turbo-stream>
|
||||
|
||||
@@ -44,9 +44,12 @@
|
||||
|
||||
<td class="px-6 py-4 whitespace-nowrap text-sm align-middle text-gray-800 dark:text-gray-50">
|
||||
{% if download.progress < 100 %}
|
||||
<div class="w-[3.25ch] h-[3.25ch] bg-purple-600 rounded-full block text-center table-cell align-middle text-xs text-gray-50">
|
||||
{{ download.progress }}
|
||||
</div>
|
||||
<div class="border-2 border-green-700 rounded-md w-full h-6 align-middle overflow-hidden">
|
||||
<div class="text-green-700 rounded-sm text-bold text-gray-950 text-center bg-green-600 h-5" style="width:{{ download.progress }}%">{{ download.progress }}%</div>
|
||||
</div>
|
||||
{# <div class="w-[3.25ch] h-[3.25ch] bg-purple-600 rounded-full block text-center table-cell align-middle text-xs text-gray-50">#}
|
||||
{# {{ download.progress }}#}
|
||||
{# </div>#}
|
||||
{% else %}
|
||||
<twig:StatusBadge color="green" status="Completed" />
|
||||
{% endif %}
|
||||
|
||||