anuragteapot / flex-originals

:headphones: A video and audio streaming web application

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Chat Chat

Flex Originals

Demo

Microservice Architecture of project

Flex Originals is an opensource project. Contributions are welcome

Features

  • 🀟 No Bootstrap Components Frameworks - Written in Vue.js for client and React.js for admin and own design scss styles.
  • πŸ“Ό Video & Audio & Image - Share your video, audio and images.
  • πŸ’ͺ Accessible - full support for VTT captions and screen readers
  • πŸ”§ Theme - Dark and Light theme.
  • 😎 Clean HTML - uses the right elements. <input type="range"> for volume and <progress> for progress and well, <button>s for buttons. There's no <span> or <a href="#"> button hacks
  • πŸ“± Responsive - works with any screen size
  • πŸ’΅ Monetization - make money from your videos
  • πŸ“Ή Streaming - streaming playback
  • πŸŽ› API - toggle playback, volume, seeking, and more through a standardized API
  • πŸ”Ž Fullscreen - supports native fullscreen with fallback to "full window" modes
  • ⌨️ Shortcuts - supports keyboard shortcuts
  • πŸ–₯ Picture-in-Picture - supports picture-in-picture mode
  • πŸ“± Playsinline - supports the playsinline attribute
  • 🏎 Speed controls - adjust speed on the fly
  • πŸ“– Multiple captions - support for multiple caption tracks
  • πŸ‘Œ Preview thumbnails - support for displaying preview thumbnails
  • πŸ’β€β™€οΈ SASS - to include in your build processes

Road Map

  1. Improve UI
  2. Improve Server
  3. Improve CDN
  4. Improve Players Video & Audio
  5. Add redis
  6. Add video and audio processing.
  7. Make distributed server.

Project Setup & Scripts

  1. ffmpeg
  2. Ngnix Server
  3. Docker & Compose
  4. MongoDB

You can run the following scripts with yarn or npm like yarn install

Script Description
install Project setup
dev Compile and start development server with hot-reload
build Compile and minify for production
prod Start production server
lint Run eslint for the entire project
test Run all tests
test:watch Start tests in watch mode

Project Setup

Node

  • Node installation on Windows Just go on official Node.js website and download the installer. Also, be sure to have git available in your PATH, npm might need it (You can find git here).

  • Node installation on Ubuntu You can install nodejs and npm easily with apt install, just run the following commands. $ sudo apt install nodejs $ sudo apt install npm

  • Other Operating Systems You can find more information about the installation on the official Node.js website and the official NPM website. If the installation was successful, you should be able to run the following command.M
    $ node --version

    $ npm --version If you need to update npm, you can make it using npm! Cool right? After running the following command, just open again the command line and be happy.
    $ npm install npm -g

MongoDB Project Setup

Follow this to install MongoDB in your computer.

official MongoDB website

INSTALLING COMPASS

  • You can install compass using the install_compass script packaged with MongoDB:
    $ ./install_compass This will download the appropriate MongoDB Compass package for your platform and install it.

FFmpeg Project Setup

  • Download a static build.
  • Use 7-Zip to unpack it in the folder of your choice.
  • Open a command prompt with administrator's rights. NOTE: Use CMD.exe, do not use Powershell! The syntax for accessing environment variables is different from the command shown in Step 4 - running it in Powershell will overwrite your System PATH with a bad value.
  • Run the command (see note below; in Win10, you might want to use the Environmental Variables area of the Windows Control Panel to update PATH): setx /M PATH "path\to\ffmpeg\bin;%PATH%".Do not run setx if you have more than 1024 characters in your system PATH variable.
  • Installing FFmpeg in Ubuntu

    sudo apt-get update
    sudo apt-get install ffmpeg sudo apt-get install frei0r-plugins

Contributing

  • Open issues πŸ’₯
  • Raise PRs for issues βœ‹
  • Fork the repo and star it ⭐
    image
  • Clone the repo : https://github.com/NJACKWinterOfCode/flex-originals.git
  • Run : npm install
  • To start development mode run: npm run dev
  • For production run in docker sudo docker-compose up --build -d with nginix server to reverse proxy to ports use this settings.

Copyright (c) 2019, Anurag Kumar Anurag Kumar

About

:headphones: A video and audio streaming web application

License:GNU General Public License v3.0


Languages

Language:Vue 45.5%Language:JavaScript 34.8%Language:CSS 13.8%Language:HTML 5.1%Language:Shell 0.7%Language:Dockerfile 0.2%