Introduction
As a part of Linode + Dev Hackathon, I have built a full-stack Django Application that makes YouTube learning more customized, organized and resourceful. Some features of the application are -
- Create custom learning modules
- Track your learning progress
- Create personal learning notes for every video
- Generate summary and transcript for every video in one click
Inspiration
YouTube is a great platform and has a ton of educational content. For me personally, YouTube videos have been very helpful for gaining knowledge and learning new concepts. However, learning from YouTube might not be as organized and productive as compared to learning from a proper course on an educational website. Considering this problem, I tried to build a platform that can help users get the same experience and productivity that they might get by learning from other educational platforms.
Description
- The paltform is integrated with a completed authentication system. Once the user create'a a new account or logs in, they are navigated to the dashboard, where they can see all the modules that they have created and also create a new module from the same page.
- For every module, the user can add any number of YouTube videos they wish.
- Once they navigate to a particular module page, they can track which videos they have watched and which they haven't
- Additionally, once they open a specific video in detail, they can watch the embedded YouTube video in the website itself and alongside take notes.
- Here, the user can also generate the summary and transcript of the youtube video by just clicking a button
How I built it
- Used Django web framework for building the application
- Used Bootstrap framework for CSS
- Used Linode's Managed Database service for deploying the PostgreSQL database
- Used Linux server for deploying the Django app
- Used python libraries - youtube_transcript_api and pytube for getting YouTube video details and transcript
- Additionally, Used HuggingFace's transformers library in Python to perform abstractive text summarization on the transcript obtained
Learning Experience
- Overall, I had a great time working on this project. I had experience working with Python language before, but had never worked with Django Framework or HuggingFace transformers, so I got learn more about these while working on this project.
- This was also my first time working with Linode and I learnt about using Linode managed databases and deploying on Linux server.
- The documentation and YouTube videos related to Django on Linode's channel were also really helpful for me.
Category Submission
- Integration Innovators - Integrated the Django App with Linode Managed Database and used Linode to deploy my Django Application
- SaaS Superstars - I will continue working on this project to enhance UI, do further improvements and integrate additional features so that it can be launched as a full fledged project for users
App Link
Screenshots
Demo Video
Link to Source Code
Github Repository - https://github.com/drishtipeshwani/YoutubeGeeks
Permissive License
MIT License
Top comments (2)
Nice
Thank you 🙌🏻