Code Monkey home page Code Monkey logo

projectchaplin's Introduction

Project Chaplin

An open source, self-hosted video sharing service

Current features

  • AGPLv3 License
  • No intrusive adverts
  • No restrictions on content by country, IP or government
  • Video downloading as standard
  • HTML5 WebM as standard
  • Brightness/Contrast controls
  • Easter eggs?
  • 12-Factor App
  • Fully Docker service compatible

Future features

  • Live streaming (pluginless) - to be re-implemented
  • No staff blocking, auto-blocking only on public demand
  • REST APIs
  • Public tagging
  • Public flagging
  • Individual show subscription
  • CSS profiles
  • Download audio
  • Scrape from other public APIs

Recommended way to install and run

  1. Copy over the special /.env.docker to /.env and edit environment variables as appropriate
  2. Use Docker Compose to install:

docker-compose -p chaplin -f servers/docker/docker-compose.yml up -d

  1. Visit the site (http://localhost or add the vhost - by default http://dev.projectchaplin.com - to /etc/hosts).

Development on Docker

Edits on the source repository will be propagated to the docker environment, and rebuilds can be done with this command instead of the above:

docker-compose -p chaplin -f servers/docker/docker-compose.yml -f servers/docker/docker-compose.dev.yml up -d

Manual install

  • Copy over /.env.example to /.env and edit environment variables as appropriate
  • Check the Dockerfiles in servers/docker for installation instructions for each component.
  • Compile the client-side JS in src/php by using npm install and npm run build.
  • Ensure PHP has the bcmath, pdo and pdo_mysql (or whichever DB you use) extension.
  • Install the PHP in src/php by using composer install.
  • Install Nginx to serve PHP in src/php/public.
  • Run listeners in src/php/cli/cli.php like: php cli.php cli youtube, php cli.php cli convert and php cli.php cli vimeo.
  • Run one-time setup script in the same way like: php cli.php init adminuser.
  • Nginx configs are in servers/nginx and copy servers/php-fpm/uploads.ini to php-fpm's conf.d.
  • SQL schema is in db/.
  • Add appropriate hosts to /etc/hosts or use DNS.

Join us!

We are currently looking for developers and designers to help this open source project. If you're interested please contact me at [email protected].

Issues

For help, you can create an issue on the Github project: https://github.com/danwdart/projectchaplin/issues

projectchaplin's People

Contributors

danwdart avatar snyk-support avatar

Watchers

 avatar

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.