diff --git a/api/funkwhale_api/templates/account/base.html b/api/funkwhale_api/templates/account/base.html
deleted file mode 100644
index c64b47a4a..000000000
--- a/api/funkwhale_api/templates/account/base.html
+++ /dev/null
@@ -1,2 +0,0 @@
-{% extends "base.html" %}
-{% block title %}{% block head_title %}{% endblock head_title %}{% endblock title %}
diff --git a/api/funkwhale_api/templates/account/email.html b/api/funkwhale_api/templates/account/email.html
deleted file mode 100644
index 7c52a4a27..000000000
--- a/api/funkwhale_api/templates/account/email.html
+++ /dev/null
@@ -1,80 +0,0 @@
-{% extends "account/base.html" %}
-
-{% load i18n %}
-{% load crispy_forms_tags %}
-
-{% block head_title %}{% trans "Account" %}{% endblock %}
-
-{% block content %}
-
-
-
-
{% trans "E-mail Addresses" %}
- {% if user.emailaddress_set.all %}
-
{% trans 'The following e-mail addresses are associated with your account:' %}
-
-
-
- {% else %}
-
{% trans 'Warning:'%} {% trans "You currently do not have any e-mail address set up. You should really add an e-mail address so you can receive notifications, reset your password, etc." %}
-
- {% endif %}
-
-
-
{% trans "Add E-mail Address" %}
-
-
-
-
-
-{% endblock %}
-
-
-{% block extra_body %}
-
-{% endblock %}
-
diff --git a/api/funkwhale_api/templates/account/email_confirm.html b/api/funkwhale_api/templates/account/email_confirm.html
deleted file mode 100644
index 4395d46bf..000000000
--- a/api/funkwhale_api/templates/account/email_confirm.html
+++ /dev/null
@@ -1,37 +0,0 @@
-{% extends "account/base.html" %}
-
-{% load i18n %}
-{% load account %}
-
-{% block head_title %}{% trans "Confirm E-mail Address" %}{% endblock %}
-
-
-{% block content %}
-
-
-
-
{% trans "Confirm E-mail Address" %}
-
- {% if confirmation %}
-
- {% user_display confirmation.email_address.user as user_display %}
-
-
{% blocktrans with confirmation.email_address.email as email %}Please confirm that {{ email }} is an e-mail address for user {{ user_display }}.{% endblocktrans %}
-
-
-
- {% else %}
-
- {% url 'account_email' as email_url %}
-
-
{% blocktrans %}This e-mail confirmation link expired or is invalid. Please issue a new e-mail confirmation request.{% endblocktrans %}
-
- {% endif %}
-
-
-
-{% endblock %}
-
diff --git a/api/funkwhale_api/templates/account/email_confirmed.html b/api/funkwhale_api/templates/account/email_confirmed.html
deleted file mode 100644
index 7b2edf08b..000000000
--- a/api/funkwhale_api/templates/account/email_confirmed.html
+++ /dev/null
@@ -1,21 +0,0 @@
-{% extends "account/base.html" %}
-
-{% load i18n %}
-{% load account %}
-
-{% block head_title %}{% trans "Confirm E-mail Address" %}{% endblock %}
-
-
-{% block content %}
-
-
-
-
{% trans "Confirm E-mail Address" %}
-
- {% user_display email_address.user as user_display %}
-
-
{% blocktrans with email_address.email as email %}You have confirmed that {{ email }} is an e-mail address for user {{ user_display }}.{% endblocktrans %}
-
-
-
-{% endblock %}
diff --git a/api/funkwhale_api/templates/account/login.html b/api/funkwhale_api/templates/account/login.html
deleted file mode 100644
index 4a05dc772..000000000
--- a/api/funkwhale_api/templates/account/login.html
+++ /dev/null
@@ -1,48 +0,0 @@
-{% extends "account/base.html" %}
-
-{% load i18n %}
-{% load account %}
-{% load socialaccount %}
-{% load crispy_forms_tags %}
-
-{% block head_title %}{% trans "Sign In" %}{% endblock %}
-
-{% block content %}
-
-
-
-
{% trans "Sign In" %}
- {% get_providers as socialaccount_providers %}
- {% if socialaccount_providers %}
-
{% blocktrans with site.name as site_name %}Please sign in with one
- of your existing third party accounts. Or, sign up
- for a {{ site_name }} account and sign in below:{% endblocktrans %}
-
-
-
-
- {% include "socialaccount/snippets/provider_list.html" with process="login" %}
-
-
-
{% trans 'or' %}
-
-
-
- {% include "socialaccount/snippets/login_extra.html" %}
-
- {% endif %}
-
-
-
-
-
-{% endblock %}
-
diff --git a/api/funkwhale_api/templates/account/logout.html b/api/funkwhale_api/templates/account/logout.html
deleted file mode 100644
index 4f1f8f3e6..000000000
--- a/api/funkwhale_api/templates/account/logout.html
+++ /dev/null
@@ -1,28 +0,0 @@
-{% extends "account/base.html" %}
-
-{% load i18n %}
-
-{% block head_title %}{% trans "Sign Out" %}{% endblock %}
-
-{% block content %}
-
-
-
-
-
{% trans "Sign Out" %}
-
-
{% trans 'Are you sure you want to sign out?' %}
-
-
-
-
-
-
-{% endblock %}
-
diff --git a/api/funkwhale_api/templates/account/password_change.html b/api/funkwhale_api/templates/account/password_change.html
deleted file mode 100644
index e282b14ad..000000000
--- a/api/funkwhale_api/templates/account/password_change.html
+++ /dev/null
@@ -1,22 +0,0 @@
-{% extends "account/base.html" %}
-
-{% load i18n %}
-{% load crispy_forms_tags %}
-{% block head_title %}{% trans "Change Password" %}{% endblock %}
-
-{% block content %}
-
-
-
-
{% trans "Change Password" %}
-
-
-
-
-
-{% endblock %}
-
diff --git a/api/funkwhale_api/templates/account/password_reset.html b/api/funkwhale_api/templates/account/password_reset.html
deleted file mode 100644
index efdfbd05c..000000000
--- a/api/funkwhale_api/templates/account/password_reset.html
+++ /dev/null
@@ -1,39 +0,0 @@
-{% extends "account/base.html" %}
-
-{% load i18n %}
-{% load account %}
-{% load crispy_forms_tags %}
-
-{% block head_title %}{% trans "Password Reset" %}{% endblock %}
-
-{% block content %}
-
-
-
-
-
{% trans "Password Reset" %}
- {% if user.is_authenticated %}
- {% include "account/snippets/already_logged_in.html" %}
- {% endif %}
-
-
{% trans "Forgotten your password? Enter your e-mail address below, and we'll send you an e-mail allowing you to reset it." %}
-
-
-
-
{% blocktrans %}Please contact us if you have any trouble resetting your password.{% endblocktrans %}
-
-
-
-{% endblock %}
-
-{% block javascript %}
- {{ block.super }}
-
-{% endblock javascript %}
-
diff --git a/api/funkwhale_api/templates/account/password_reset_done.html b/api/funkwhale_api/templates/account/password_reset_done.html
deleted file mode 100644
index 865ecaa0a..000000000
--- a/api/funkwhale_api/templates/account/password_reset_done.html
+++ /dev/null
@@ -1,22 +0,0 @@
-{% extends "account/base.html" %}
-
-{% load i18n %}
-{% load account %}
-
-{% block head_title %}{% trans "Password Reset" %}{% endblock %}
-
-{% block content %}
-
-
-
-
{% trans "Password Reset" %}
-
- {% if user.is_authenticated %}
- {% include "account/snippets/already_logged_in.html" %}
- {% endif %}
-
-
{% blocktrans %}We have sent you an e-mail. Please contact us if you do not receive it within a few minutes.{% endblocktrans %}
-
-
-
-{% endblock %}
diff --git a/api/funkwhale_api/templates/account/password_reset_from_key.html b/api/funkwhale_api/templates/account/password_reset_from_key.html
deleted file mode 100644
index 41b50843f..000000000
--- a/api/funkwhale_api/templates/account/password_reset_from_key.html
+++ /dev/null
@@ -1,32 +0,0 @@
-{% extends "account/base.html" %}
-
-{% load i18n %}
-{% load crispy_forms_tags %}
-
-{% block head_title %}{% trans "Change Password" %}{% endblock %}
-
-{% block content %}
-
-
-
-
{% if token_fail %}{% trans "Bad Token" %}{% else %}{% trans "Change Password" %}{% endif %}
-
- {% if token_fail %}
- {% url 'account_reset_password' as passwd_reset_url %}
-
{% blocktrans %}The password reset link was invalid, possibly because it has already been used. Please request a new password reset.{% endblocktrans %}
- {% else %}
- {% if form %}
-
- {% else %}
-
{% trans 'Your password is now changed.' %}
- {% endif %}
- {% endif %}
-
-
-
-{% endblock %}
-
diff --git a/api/funkwhale_api/templates/account/password_reset_from_key_done.html b/api/funkwhale_api/templates/account/password_reset_from_key_done.html
deleted file mode 100644
index e940eb83d..000000000
--- a/api/funkwhale_api/templates/account/password_reset_from_key_done.html
+++ /dev/null
@@ -1,16 +0,0 @@
-{% extends "account/base.html" %}
-
-{% load i18n %}
-{% block head_title %}{% trans "Change Password" %}{% endblock %}
-
-{% block content %}
-
-
-
-
{% trans "Change Password" %}
-
{% trans 'Your password is now changed.' %}
-
-
-
-{% endblock %}
-
diff --git a/api/funkwhale_api/templates/account/password_set.html b/api/funkwhale_api/templates/account/password_set.html
deleted file mode 100644
index 03e2fcd2d..000000000
--- a/api/funkwhale_api/templates/account/password_set.html
+++ /dev/null
@@ -1,23 +0,0 @@
-
-{% extends "account/base.html" %}
-
-{% load i18n crispy_forms_tags %}
-
-{% block head_title %}{% trans "Set Password" %}{% endblock %}
-
-{% block content %}
-
-
-
-
{% trans "Set Password" %}
-
-
-
-
-
-{% endblock %}
-
diff --git a/api/funkwhale_api/templates/account/signup.html b/api/funkwhale_api/templates/account/signup.html
deleted file mode 100644
index 5db1cac77..000000000
--- a/api/funkwhale_api/templates/account/signup.html
+++ /dev/null
@@ -1,33 +0,0 @@
-{% extends "account/base.html" %}
-
-{% load i18n %}
-{% load crispy_forms_tags %}
-
-{% block title %}{% trans "Signup" %}{% endblock title %}
-
-{% block content %}
-
-
-
-
-
{% trans "Sign Up" %}
-
-
{% blocktrans %}Already have an account? Then please sign in.{% endblocktrans %}
-
-
-
-
-
-
-
-{% endblock content %}
-
-
-
diff --git a/api/funkwhale_api/templates/account/signup_closed.html b/api/funkwhale_api/templates/account/signup_closed.html
deleted file mode 100644
index 24e93d7bc..000000000
--- a/api/funkwhale_api/templates/account/signup_closed.html
+++ /dev/null
@@ -1,18 +0,0 @@
-{% extends "account/base.html" %}
-
-{% load i18n %}
-
-{% block head_title %}{% trans "Sign Up Closed" %}{% endblock %}
-
-{% block content %}
-
-
-
-
{% trans "Sign Up Closed" %}
-
-
{% trans "We are sorry, but the sign up is currently closed." %}
-
-
-
-{% endblock %}
-
diff --git a/api/funkwhale_api/templates/account/verification_sent.html b/api/funkwhale_api/templates/account/verification_sent.html
deleted file mode 100644
index f994b46e0..000000000
--- a/api/funkwhale_api/templates/account/verification_sent.html
+++ /dev/null
@@ -1,18 +0,0 @@
-{% extends "account/base.html" %}
-
-{% load i18n %}
-
-{% block head_title %}{% trans "Verify Your E-mail Address" %}{% endblock %}
-
-{% block content %}
-
-
-
-
{% trans "Verify Your E-mail Address" %}
-
-
{% blocktrans %}We have sent an e-mail to {{ email }} for verification. Follow the link provided to finalize the signup process. Please contact us if you do not receive it within a few minutes.{% endblocktrans %}
-
-
-
-
-{% endblock %}
diff --git a/api/funkwhale_api/templates/account/verified_email_required.html b/api/funkwhale_api/templates/account/verified_email_required.html
deleted file mode 100644
index bf4887a4a..000000000
--- a/api/funkwhale_api/templates/account/verified_email_required.html
+++ /dev/null
@@ -1,28 +0,0 @@
-{% extends "account/base.html" %}
-
-{% load i18n %}
-
-{% block head_title %}{% trans "Verify Your E-mail Address" %}{% endblock %}
-
-{% block content %}
-
-
-
-
{% trans "Verify Your E-mail Address" %}
-
- {% url 'account_email' as email_url %}
-
-
{% blocktrans %}This part of the site requires us to verify that
- you are who you claim to be. For this purpose, we require that you
- verify ownership of your e-mail address. {% endblocktrans %}
-
-
{% blocktrans %}We have sent an e-mail to you for
- verification. Please click on the link inside this e-mail. Please
- contact us if you do not receive it within a few minutes.{% endblocktrans %}
-
-
{% blocktrans %}Note: you can still change your e-mail address.{% endblocktrans %}
-
-
-
-{% endblock %}
-
diff --git a/api/funkwhale_api/templates/users/user_detail.html b/api/funkwhale_api/templates/users/user_detail.html
deleted file mode 100644
index f8deb6b72..000000000
--- a/api/funkwhale_api/templates/users/user_detail.html
+++ /dev/null
@@ -1,36 +0,0 @@
-{% extends "base.html" %}
-{% load static %}
-
-{% block title %}User: {{ object.username }}{% endblock %}
-
-{% block content %}
-
-
-
-
-
-
{{ object.username }}
- {% if object.name %}
-
{{ object.name }}
- {% endif %}
-
-
-
-{% if object == request.user %}
-
-
-
-{% endif %}
-
-
-
-{% endblock content %}
-
diff --git a/api/funkwhale_api/templates/users/user_form.html b/api/funkwhale_api/templates/users/user_form.html
deleted file mode 100644
index c07b8f2fc..000000000
--- a/api/funkwhale_api/templates/users/user_form.html
+++ /dev/null
@@ -1,17 +0,0 @@
-{% extends "base.html" %}
-{% load crispy_forms_tags %}
-
-{% block title %}{{ user.username }}{% endblock %}
-
-{% block content %}
- {{ user.username }}
-
-{% endblock %}
diff --git a/api/funkwhale_api/templates/users/user_list.html b/api/funkwhale_api/templates/users/user_list.html
deleted file mode 100644
index 7fbcc52d4..000000000
--- a/api/funkwhale_api/templates/users/user_list.html
+++ /dev/null
@@ -1,20 +0,0 @@
-{% extends "base.html" %}
-{% load static %}{% load i18n %}
-{% block title %}Members{% endblock %}
-
-{% block content %}
-
-
-
-
Users
-
-
-
-{% endblock content %}
diff --git a/api/funkwhale_api/users/urls.py b/api/funkwhale_api/users/urls.py
deleted file mode 100644
index 94b18b264..000000000
--- a/api/funkwhale_api/users/urls.py
+++ /dev/null
@@ -1,10 +0,0 @@
-# -*- coding: utf-8 -*-
-from __future__ import absolute_import, unicode_literals
-
-from django.conf.urls import url
-
-from . import views
-
-urlpatterns = [
-
-]
diff --git a/api/requirements/base.txt b/api/requirements/base.txt
index 0b9e03090..ae851962a 100644
--- a/api/requirements/base.txt
+++ b/api/requirements/base.txt
@@ -6,12 +6,6 @@ django-environ==0.4.0
django-secure==1.0.1
whitenoise==2.0.6
-
-# Forms
-django-braces==1.8.1
-# django-crispy-forms==1.5.2
-# django-floppyforms==1.5.2
-
# Models
django-model-utils==2.3.1
@@ -26,10 +20,6 @@ django-allauth==0.24.1
# Python-PostgreSQL Database Adapter
psycopg2==2.6.1
-# Unicode slugification
-unicode-slugify==0.1.3
-django-autoslug==1.9.3
-
# Time zones support
pytz==2015.7
@@ -42,21 +32,21 @@ celery==3.1.19
# Your custom requirements go here
-django-cors-headers
-musicbrainzngs
+django-cors-headers==2.1.0
+musicbrainzngs==0.6
youtube_dl>=2015.12.21
-djangorestframework
-djangorestframework-jwt
-django-celery
-django-mptt
-google-api-python-client
-arrow
-django-taggit
-persisting_theory
-django-versatileimagefield
-django-cachalot
-django-rest-auth
-beautifulsoup4
-markdown
-ipython
-mutagen
+djangorestframework==3.6.3
+djangorestframework-jwt==1.11.0
+django-celery==3.2.1
+django-mptt==0.8.7
+google-api-python-client==1.6.2
+arrow==0.10.0
+django-taggit==0.22.1
+persisting-theory==0.2.1
+django-versatileimagefield==1.7.1
+django-cachalot==1.5.0
+django-rest-auth==0.9.1
+beautifulsoup4==4.6.0
+Markdown==2.6.8
+ipython==6.1.0
+mutagen==1.38