Skip to content

ZialeHub/hypertube

Repository files navigation

Hypertube

42 school 4 people project I worked on in 2024.

The aim of this project is to create a video streaming website.

It's an application that makes it easy for users to discover and watch movies via torrents, covering the whole process from registration to the final video playback. Users are able to register, log in (including via OAuth strategies), complete their profile, search, filter, and sort a vast library of movies fetched from external APIs. They are also able to view detailed information about each movie, interact with other users through a comment section, and stream the video directly in their browser using a custom media player that downloads, transcodes, and streams torrents in real time.

Technologies

  • Language: TypeScript
  • Backend: Adonis (Node.js)
  • Frontend: React
  • Database: PostgreSQL
  • Reverse Proxy: Nginx
  • Containerization: Docker

Features

  • User authentication (registration, login, OAuth).
  • Movie browsing (popular movies, search, filters/sorts).
  • Movie details (title, synopsis, release date, genres, cast, etc.)
  • Use TMDB API to fetch movie data and images.
  • Download and stream movies in real time (using BitTorrent protocol and HLS streaming).
  • User preferences (watchlist, favorites).
  • User interactions (comments, ratings).
  • Using translation API to support multiple languages.

Views

Login page:

login.png

Register page:

register.png

Account page:

parameters-account.png

Thumbnails page:

thumbnails.png thumbnails-details.png filters.png specific.png

Movie page:

movie.png watch-movie.png movie-details.png comments.png

TMDB routes

Documentation

Swagger available at: http://127.0.0.1:3000/api.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors