multistream/.
A Django Project that powers Multistre.am, the mutltiple-simultaneous-Twitch-channel viewer.
Directory Listing
total 100K
drwxr-xr-x 6 4.0K Oct 12 2022 ./
drwxr-xr-x 3 4.0K Jun 7 14:51 ../
drwxr-xr-x 2 4.0K Oct 4 2022 bin/
drwxr-xr-x 5 4.0K Oct 4 2022 frontend/
drwxr-xr-x 2 4.0K Oct 4 2022 scripts/
-rw-r--r-- 1 359 Oct 1 2022 env.sample
-rw-r--r-- 1 84 Oct 4 2022 .gitignore
-rw-r--r-- 1 248 Oct 1 2022 LICENSE
-rwxr-xr-x 1 540 Nov 3 2018 manage.py
-rw-r--r-- 1 253 Oct 2 2022 Pipfile
-rw-r--r-- 1 41K Oct 2 2022 Pipfile.lock
-rw-r--r-- 1 2.0K Oct 4 2022 README.md
-rw-r--r-- 1 117 Sep 29 2022 summary.md
-rw-r--r-- 1 2.5K Oct 12 2022 TODO
Download
- Git clone URL:
https://obsolete.computer/static/code/multistream/.git
- Download Tarball: multistream.tar.bz2
Readme
Multistream
The best way to watch multiple Twitch streams at one time.
Well, maybe not any more, but I still like it. Simplicity is sometimes the greatest asset a project can have.
This is the code (a Django project) that powers Multistre.am. Please if you find any bugs, contact me before you hack into the site.
Setting up your own instance
As of right now Multistream runs on Linux.
Dependencies
You'll need
pipenv
andnodejs-less
along withnodejs-less-plugin-clean-css
(annoyingly, hoping to change this soon)... and I think that's it, since Pipenv will handle the installation of Django & some other Python dependencies.Install Pipenv
(via pip, pacman, apt, etc)
pip install pipenv
Pull down the code
git clone https://obsolete.computer/static/code/multistream/.git
cd multistream
Build the Pipenv environment and grab dependencies
pipenv install
Edit the .env file with info for your environment
The Twitch API client ID and client secret can be obtained through their dev console.
cp env.sample .env && nano .env
Create a Sqlite database
pipenv run ./manage.py migrate
Build the frontend CSS
Right now this is the step that requires
nodejs-less
andnodejs-less-plugin-clean-css
(both in the AUR).
cd frontend/static
lessc --math=strict --clean-css="advanced" multistream.less > multistream.css
cd ../..
Fire up the dev server
pipenv run ./manage.py runserver
Test/Use/Build!
Point your browser to
http://localhost:8000
. You should be greeted by the familiar stream-picker form. If you try to build a multistream layout, you won't initially see the players & chats load... this is for development. To test out the real thing, setUSE_LIVE_EMBEDS
toTrue
in your.env
file.The admin url by default is
http://localhost:8000/ms-admin/
. You can create an admin account for your instance with the commandpipenv run ./manage.py createsuperuser
.
Recent Changes
- [4386052] 2022-10-12: updated TODO again
- [0c22816] 2022-10-12: updated TODO
- [aec52c8] 2022-10-12: remove dependency on CDNs, move to in-browser LESS compilation
- [113891c] 2022-10-04: note to self, reread the whole paragraph before committing.
- [3e2bf13] 2022-10-04: new TODO.
License
This project is in the public domain.
Contributing changes back to this codebase and giving attribution when reusing this code are both wonderful things, but neither are necessary.