Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/vomnes/hypertube
This project proposes to create a web application that allows the user to research and watch videos. The player will be directly integrated to the site, and the videos will be downloaded through the BitTorrent protocol.
https://github.com/vomnes/hypertube
api bittorrent golang imdb javascript mongodb movies nodejs oauth sass streaming unit-testing vuejs websockets
Last synced: 2 months ago
JSON representation
This project proposes to create a web application that allows the user to research and watch videos. The player will be directly integrated to the site, and the videos will be downloaded through the BitTorrent protocol.
- Host: GitHub
- URL: https://github.com/vomnes/hypertube
- Owner: vomnes
- Created: 2018-12-08T12:45:13.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2022-12-22T09:08:43.000Z (about 2 years ago)
- Last Synced: 2024-06-21T15:48:53.855Z (7 months ago)
- Topics: api, bittorrent, golang, imdb, javascript, mongodb, movies, nodejs, oauth, sass, streaming, unit-testing, vuejs, websockets
- Language: Go
- Size: 12.7 MB
- Stars: 6
- Watchers: 2
- Forks: 1
- Open Issues: 37
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Hypertube
This project proposes to create a web application that allows the user to research and watch videos. The player will be directly integrated to the site, and the videos will be downloaded through the BitTorrent protocol.## Group project
This is a GROUP project realised during my studies at 'Ecole 42'.I have done completely by myself the [Golang API](./apiGo) (Manage movies (search, movie page, list categories...), user(oauth...), comments...) with unit tests, [the script to populate the movie database](./apiGo/App/scriptMovies.go) in Golang (download files, parse, scrape websites and save in the database) and done a big part of [the front](./front) in VueJS.
## Technologies
We have designed and realised this project from scratch using VueJS, Golang, MongoDB(using aggregates), NodeJS, Websockets (socket.io), HTML, SASS (compiled CSS), Apache, Docker and Kubernetes.We have done everything from scratch with a responsive web design (HTML/CSS framework).
We handle multi languages with i18n, the authentication through Oauth(Google, 42 API (our school oauth), Facebook...) is available.The movie database comes from [IMDb](https://www.imdb.com/) and [TMDb](https://www.themoviedb.org) API.
We have programmed from scratch the torrent client implementing (download torrents) the BitTorrent Protocol in NodeJS.
- https://wiki.theory.org/index.php/BitTorrentSpecification
- http://www.bittorrent.org/beps/bep_0000.html
- http://www.bittorrent.org/beps/bep_0015.html## Features
### Profile
- Create an account
- Reset your password through an unique link sent by email (using third party MailJet)
- Modified your private data
- Add/Edit
### List movies
- List the movies by categories and sorted by relevance
- See a page with all the movies of a category
- Load more data on maximum scroll automatically (no pages)
### Search
- Search for movies by name, year, rating and status
### See movie
- Movie data
- Add/Get comments
- List/Download the torrents
- Watch the movie