Go to file
Eliot Berriot 472aa87838
Added documentation to manually enable required extensions
2018-03-06 17:56:47 +01:00
api Removed duplicate variable 2018-03-06 17:44:53 +01:00
changes Fix #84: smarter pagination with fixed size 2018-03-05 22:45:01 +01:00
demo Updated demo script 2018-03-04 18:33:30 +01:00
deploy Disable cachalot by default 2018-03-06 17:45:13 +01:00
docker/nginx Initial channels integration 2018-03-01 18:38:31 +01:00
docs Added documentation to manually enable required extensions 2018-03-06 17:56:47 +01:00
front Fix #84: smarter pagination with fixed size 2018-03-05 22:45:01 +01:00
.dockerignore
.editorconfig
.env.dev
.gitattributes
.gitignore
.gitlab-ci.yml Added FUNWHALE_URL setting to use in activity stream in representations 2018-03-01 18:38:32 +01:00
CHANGELOG Version bump and changelog 2018-03-04 15:16:35 +01:00
CONTRIBUTORS.txt
LICENSE
README.rst
dev.yml Minor fixes to docker setup 2018-03-02 00:14:55 +01:00
pyproject.toml Now use towncrier for changelog management 2018-02-27 19:04:50 +01:00

README.rst

Funkwhale
=============

A self-hosted tribute to Grooveshark.com.

LICENSE: BSD

Setting up a development environment (docker)
----------------------------------------------

First of all, pull the repository.

Then, pull and build all the containers::

    docker-compose -f dev.yml build
    docker-compose -f dev.yml pull


API setup
^^^^^^^^^^

You'll have apply database migrations::

    docker-compose -f dev.yml run celeryworker python manage.py migrate

And to create an admin user::

    docker-compose -f dev.yml run celeryworker python manage.py createsuperuser


Launch all services
^^^^^^^^^^^^^^^^^^^

Then you can run everything with::

    docker-compose up

The API server will be accessible at http://localhost:6001, and the front-end at http://localhost:8080.

Running API tests
------------------

Everything is managed using docker and docker-compose, just run::

    ./api/runtests

This bash script invoke `python manage.py test` in a docker container under the hood, so you can use
traditional django test arguments and options, such as::

    ./api/runtests funkwhale_api.music   # run a specific app test