You are browsing as a guest. Sign up (or log in) to start making projects!

TubeSlice

  • 5 Devlogs
  • 19 Total hours

App for downloading segments from YouTube videos. Handy for making edits.

Open comments for this post

1h 4m 37s logged

It took more than hour I assure you. Deploying was hell.
As you rejected me and didn’t even try to read, that I dont have funding vps, you just suggested me to deploy on some static hosting…

But I did bought vps, I did ran my application there and solved million errors by the way, and ran there all Redis+FastAPI+Celery+Postgres, that you can not deploy on static hosting.
Then I used vercel for hosting frontend. I had to get the ssl certificate for the backend which I did by first getting free domian from https://www.duckdns.org/domains . and finally I did it, now you can try.
But unfortunately due to data centre IP it flags and max resolution is 360p…
yet it is enough for demo.

0
0
7
Ship #1 Changes requested

Release V1.0
My goal was to learn backend fundamentals with these project. From that perspective it was success, I learned a lot of things.
Yet, the project is not perfect.
I couldn’t find solution for the main problem: slow segment downloading. It works well with downloading full video,but not with specific time range download. The function I needed the most, actually.
But, I am happy that at least it works.
At first I though of deploying it and adding billing, so for downloading videos at 4K users would pay me, but at that time I didn’t know about ToS of Youtube. So, it is not allowed to deploy my app and commercialize it. That is why it is fully open source, and you can ran it in your local machines if needed.
Backend includes 4 main parts.
FastAPI (JWT authorization, ytDLP, segments id generating)
Celery and Redis for caching and background workers
PostgreSQL DB.

I admit that Frontend was generated by AI, as my goal was only learning backend, and making also the frontend by myself would require huge amount of time. yet, Backend is entiry done by me.

It is unfortunate that I can’t deploy it to you for your use.
First, the ToS of youtube doesn’t allow this.
secondly, i dont have any funding for vps, where backend should run and store videos.
So, the project came to its logical end.
If its not hard please could you star the repo? I did spend huge amount of time for this project. Thank you!

  • 4 devlogs
  • 18h
Try project → See source code →
Open comments for this post

3h 20m 29s logged

Almost everything done.
It seemed like more than 3 hours but ok.
I couldn’t solve the problem with slow segment downloading with yt-dlp. So, I left it how it was. Yes it is slow, yet it works. From the backend part what I added was
Format selection, Now the resolution of the video can be selected.
Attaching download to the user_id small change, yet now download logs are saved when user login.

My goal was not learning frontend, so this part I gave it to AI. I used Codex skill and made pretty good frontend.

But again, even if frontend was done by AI, the backend was done completely by me. So, it still required huge effort.

0
0
11
Open comments for this post

6h 44m 28s logged

Stage 1.1V ?

If someone has experience in downloading youtube videos, especially only part of the video with python yt-dlp please contact me. I really appreciate any help.
I am getting close to finishing the segment downloading function, but…

I am hitting the wall. the downloading only slice of the yt video is slower than i expected. it might take up to hours if clip has to be extracted from long video. I don’t know what to do now. I am searching for some solution in official yt-dlp repository through issues and questions. Still, couldn’t find solution that would work for me. I tried direct ffmpeg,aria2c as external downloaders and maybe i will have to download full video first and only then cut clip from it… Though I find it very inefficient.

2
0
29
Open comments for this post

4h 41m 54s logged

STAGE 1: IT IS WORKING!!

Following the three stage plan I made, and now I am happy to share that first stage is completed.
Right now, the backend includes

  • basic authentication + encryption + JWT token
  • it can download youtube video by the url.

that is basically it?
I know there are many downloader apps for youtube. But, this is not final stage and I have a lot of things to add and learn.

Stage 2 planned functions:

  • Download only clips from youtube videos
  • Preventing API abuse from same IP
  • adding workers and queue (Celery and Redis)
  • Scheduler to Delete videos daily
  • Assigning Roles
  • email function (forgot password, 2FA)

The conclusion from first stage.
It took longer than I expected (partly because I played and was glued to Factorio game). Nevertheless, I certainly made a step to my goal and specializing in backend coding without any use of AI and understanding every code I write.

So, learn, build and enjoy!

0
0
6
Open comments for this post

3h 27m 29s logged

YAY, made authorization completely from scratch using fast api. This project is not just the sake of the final product. I want to actually learn and love the process. So, it is also a challenge for me.

Actually, I started learning FastApi and python backend a little earlier, so I know the basics. Previously, though, I only repeated from tutorials, and I couldn’t make it from scratch. Yet, I was able to do it now, so I enjoy this small accomplishment.

In future, though, there are huge challenges on my way.

0
0
4

Delete project?

Are you sure you want to permanently delete this project? This action cannot be undone.

All devlogs, followers, and associated data will be removed.

Followers

Loading…