GithubHelp home page GithubHelp logo

yodotube's Introduction

yodotube

Yodotoube

Install

You will need to install go-ipfs first.

System Requirements

You will need to install python3 and pip:

$> sudo apt update
$> sudo apt install python3 python3-venv

Python part

Clone the project:

$> git clone [email protected]:Yodolescrypto/yodotube.git

Start a new virtualenv then install pip dependencies:

$> cd yodotube/yodotube
$> virtualenv $PWD/venv
$(venv)> source $PWD/venv/bin/activate
$(venv)> pip3 install -r requirements.txt

Make the migrations and create your superuser (the first time only):

$(venv)> python3 manage.py migrate
$(venv)> python3 manage.py createsuperuser

Starting to run everything

Last step: Start IPFS node in daemon mode:

$> ipfs daemon&

You may use screen:

$> screen -dmS ipfs ipfs daemon
$> screen -r ipfs #to get it back, then ctrl-a, d to detach it again

Then start your django project:

$> screen -dmS yodotube $PWD/venv/bin/python3 manage.py runserver
$> screen -r yodotube #to get it back, then ctrl-a, d to detach it again

Use it

Go on http://127.0.0.1:8000

Admin Panel

You may find the admin panel here: http://127.0.0.1:8000/admin

yodotube's People

Contributors

yodolescrypto avatar ankirama avatar

Watchers

 avatar  avatar

yodotube's Issues

Create /

Landing page Youtube-Like with list of videos --> captions --> Title.

Create /upload

Create a nice upload page with these specific parameters on the front-side:

  1. Title
  2. Video
  3. Caption
  4. Account wallet
  5. Send the form to POST /upload (params :title :video :caption :wallet)
  6. Redirect to play/str:video (not possible yet due to uploadVideo function not returning anything)

Header update

Update the Header with the following options:

  1. Clickable "Yodotube" to return to the landing page
  2. Clickable "Upload" to go to /upload
  3. Login/Logout button/form to go to /login /logout POST

create IPFS ORM

*/!/!/!/!\ Ticket ongoing, changes can me made to prototype /!/!/!/!*

Clean implementation of an IPFS ORM.

Prototype:

class ipfs(str url);
returns (ipfs socket);

function upload(ipfs socket, str path, int directory or 0);
returns (str path);

Create /login /logout

Login will be available through a wallet at first, MM integration needed.
Login details to retrieve are only walletAddress.

Loging out will delete walletAddress param.

Function: uploadVideo

prototype:
uploadVideo(str walletAddress, str title, dict video, dict caption);
returns list [walletAddress, title];

video & caption are both
These are to be used with IPFS as follows:

  1. walletAddress as directory
  2. title as sub-directory
  3. video & caption as sub-directories containing respectively the video and caption uploaded

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.