diff --git a/note_kfet/settings/base.py b/note_kfet/settings/base.py
index 79c4f9ef7f96b468bbbbfb9aa3cd041c1d0b595a..2e0ff8f5b327516d62dfd982c2126aba7dd3e80b 100644
--- a/note_kfet/settings/base.py
+++ b/note_kfet/settings/base.py
@@ -27,13 +27,14 @@ ALLOWED_HOSTS = [
 
 INSTALLED_APPS = [
     # External apps
+    'bootstrap_datepicker_plus',
+    'colorfield',
+    'crispy_forms',
+    'django_htcpcp_tea',
+    'django_tables2',
     'mailer',
     'phonenumber_field',
     'polymorphic',
-    'crispy_forms',
-    'django_tables2',
-    'bootstrap_datepicker_plus',
-    'colorfield',
 
     # Django contrib
     'django.contrib.admin',
@@ -74,6 +75,7 @@ MIDDLEWARE = [
     'django.middleware.clickjacking.XFrameOptionsMiddleware',
     'django.middleware.locale.LocaleMiddleware',
     'django.contrib.sites.middleware.CurrentSiteMiddleware',
+    'django_htcpcp_tea.middleware.HTCPCPTeaMiddleware',
     'note_kfet.middlewares.TurbolinksMiddleware',
 ]
 
diff --git a/note_kfet/urls.py b/note_kfet/urls.py
index 24ab075d6a45d90744b437717051bf3bc724726a..62943e4d994d16e523ca25fe0e50aeb9c88491e9 100644
--- a/note_kfet/urls.py
+++ b/note_kfet/urls.py
@@ -31,6 +31,9 @@ urlpatterns = [
     path('accounts/', include('django.contrib.auth.urls')),
     path('api/', include('api.urls')),
     path('permission/', include('permission.urls')),
+
+    # Make coffee
+    path('coffee/', include('django_htcpcp_tea.urls')),
 ]
 
 urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
diff --git a/requirements/base.txt b/requirements/base.txt
index b614fdae90b5f9577124c3a1e2b379cb229495ef..ba380f734edf5470dfc7fc9a5574be1c06b436ae 100644
--- a/requirements/base.txt
+++ b/requirements/base.txt
@@ -7,6 +7,7 @@ django-allauth==0.39.1
 django-crispy-forms==1.7.2
 django-extensions==2.1.9
 django-filter==2.2.0
+django-htcpcp-tea==0.3.1
 django-mailer==2.0.1
 django-phonenumber-field==4.0.0
 django-polymorphic==2.0.3