Something something like soundcloud but not like soundcloud.
Log in, upload records, done.
Simple, easy, KISS.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Dashie der otter a451ed2e57
Merge pull request #16 from rhaamo/dependabot/pip/sqlalchemy-1.2.15
17 hours ago
.gitea Add ISSUE TEMPLATE 4 months ago
.github/ISSUE_TEMPLATE Update issue templates 4 weeks ago
activitypub Implement inbox Update for Person; Add summary support 4 weeks ago
controllers Split user card in a macro, use it for search and followings/ers 4 weeks ago
docs Some fix for nginx config and todo 2 months ago
migrations try to fix the CI and migration 3 months ago
static Add map files 4 weeks ago
templates Implement inbox Update for Person; Add summary support 4 weeks ago
tests Fix config; Add redis to drone 3 months ago
tmp That's ugly 1 year ago
translations Add a bunch of gettext; Update catalogs and French translation 3 months ago
uploads Can upload 1 year ago
.coveragerc Add coverage to pytest 4 months ago
.dockerignore Add dockerfiles 4 months ago
.drone.yml Restrict drone docker publishing to master branch 1 month ago
.gitignore Update gitignore 1 month ago
.isort.cfg Can show the right follow link; Formatting 3 months ago
.pre-commit-config.yaml Add some things for dev 3 months ago
Dockerfile-web HAHAAHSadhjsadhsakdhsafkds 4 months ago
Dockerfile-worker Fix docker and readme celery command 3 months ago
LICENSE Add LICENSE file 4 months ago
README.md We use Waitress instead of Gunicorn 2 months ago
TODO.org TODO update 4 weeks ago
TRANSLATION-NOTES.txt Add a bunch of gettext; Update catalogs and French translation 3 months ago
app.py Makes PEP8 happy 1 month ago
babel.cfg Update french translation 1 year ago
config.py.sample Fix config; Add redis to drone 3 months ago
dbseed.py Can show the right follow link; Formatting 3 months ago
entrypoint.sh Add dockerfiles 4 months ago
forms.py Name can't be changed; Removed from forms 1 month ago
messages.pot Add a bunch of gettext; Update catalogs and French translation 3 months ago
models.py Implement inbox Update for Person; Add summary support 4 weeks ago
pyproject.toml Fix black formatter doing crap 2 months ago
requirements.txt Merge pull request #16 from rhaamo/dependabot/pip/sqlalchemy-1.2.15 17 hours ago
setup.cfg Can show the right follow link; Formatting 3 months ago
setup.py Started redesign from bootstrap3 to bootstrap4 1 month ago
shelltools.py User now have an actor; Returns Actor json via Accept: header 4 months ago
tasks.py Makes PEP8 happy 1 month ago
transcoding_utils.py Try to migrate to Celery 3 months ago
utils.py Can show the right follow link; Formatting 3 months ago
version.py Fix VERSION 3 months ago

README.md

Reel2Bits

Build Status

Versions requirement

Installation

Install a BDD (mysql is supported, SQLite maybe, PostgreSQL should be)
Makes sure that encoding is/will be in UNICODE/UTF-8
git clone http://dev.sigpipe.me/dashie/reel2bits
cd reel2bits
pip3 install --requirement requirements.txt
python3 setup.py install
# Install Pydub dependencies: https://github.com/jiaaro/pydub#dependencies
cp config.py.sample config.py
$EDITOR config.py
export FLASK_ENV=<development or production>
$ create your postgresql database, like 'reel2bits'
$ with the postgresql shell, run using superuser on the reel2bits database:
CREATE EXTENSION IF NOT EXISTS "uuid-ossp";
flask db upgrade
flask seed
flask run
Don't forget to update default Config by getting to "Your user" (top right) then "Config"

Also install this tool : https://github.com/bbc/audiowaveform
And adapt the path to it in config.py

Creating an user

If you have enabled registration in config, the first user registered will be ADMIN !

Or if you have disabled registration, use the flask createuser command to create an user.

Production running

sudo easy_install3 virtualenv
sudo su - reel2bits
cd reel2bits

>> install -> git part

virtualenv -p /usr/bin/python3 venv
or if python 3.6 from github repo:
virtualenv -ppython3.6 venv

source venv/bin/activate
>> get back to install part

pip install waitress

Copy systemd services files docs/reel2bits-*.service to /etc/systemd/system/ and adapt them to your setup.

systemctl enable reel2bits-web reel2bits-worker
systemctl start reel2bits-web reel2bits-worker

Use docs/reel2bits.nginx as vhost template for X-Accel-Redirect part.

Docker

TODO

Default config

  • App Name: My reel2bits instance

Workers

Run the workers using:

$ celery worker -A tasks.celery --loglevel=error

TODO

  • Better handle transcoding and waveform generation for FLAC and OGG (audiowaveform should use the transcoded mp3 file)
  • ActivityPub support is near zero
  • Tests and create_app() better refactoring
  • Design needs improvements

Licensing

  • MIT License

Others projects inspired from