diff --git a/home/admin.py b/home/admin.py
index 8c38f3f3dad51e4585f3984282c2a4bec5349c1e..f3780595d06b269f022a1125297c0f514965f419 100644
--- a/home/admin.py
+++ b/home/admin.py
@@ -1,3 +1,7 @@
 from django.contrib import admin
 
-# Register your models here.
+from home.models import InterludesActivity, InterludesParticipant, ActivityList
+
+admin.site.register(InterludesActivity)
+admin.site.register(InterludesParticipant)
+admin.site.register(ActivityList)
diff --git a/home/migrations/0001_initial.py b/home/migrations/0001_initial.py
new file mode 100644
index 0000000000000000000000000000000000000000..fed22d0f24f5ab86d007b0524d5c4d8223f32685
--- /dev/null
+++ b/home/migrations/0001_initial.py
@@ -0,0 +1,50 @@
+# Generated by Django 3.0.8 on 2021-02-28 16:00
+
+from django.conf import settings
+from django.db import migrations, models
+import django.db.models.deletion
+
+
+class Migration(migrations.Migration):
+
+    initial = True
+
+    dependencies = [
+        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
+    ]
+
+    operations = [
+        migrations.CreateModel(
+            name='InterludesActivity',
+            fields=[
+                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+                ('title', models.CharField(max_length=200, verbose_name='Titre')),
+                ('duration', models.DurationField(verbose_name='Durée')),
+                ('host_name', models.CharField(max_length=50, verbose_name="Nom de l'organisateur")),
+                ('host_email', models.EmailField(max_length=254, verbose_name="Email de l'organisateur")),
+                ('description', models.TextField(max_length=2000, verbose_name='Description')),
+            ],
+        ),
+        migrations.CreateModel(
+            name='InterludesParticipant',
+            fields=[
+                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+                ('name', models.CharField(max_length=200, verbose_name='Nom complet')),
+                ('email', models.EmailField(max_length=254, verbose_name='email')),
+                ('school', models.CharField(choices=[('U', 'ENS Ulm'), ('L', 'ENS Lyon'), ('R', 'ENS Rennes'), ('C', 'ENS Paris Saclay')], max_length=1, verbose_name='ENS de rattachement')),
+                ('user', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, related_name='Utilisateur', to=settings.AUTH_USER_MODEL)),
+            ],
+        ),
+        migrations.CreateModel(
+            name='ActivityList',
+            fields=[
+                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+                ('priority', models.PositiveIntegerField()),
+                ('activite', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='home.InterludesActivity')),
+                ('participant', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='home.InterludesParticipant')),
+            ],
+            options={
+                'unique_together': {('priority', 'participant')},
+            },
+        ),
+    ]
diff --git a/home/models.py b/home/models.py
index 1dcb89de0d02461a822e646b31bb6d6de59f4803..17c6b867b71a30a44ba3f305916aafb56a45c5ee 100644
--- a/home/models.py
+++ b/home/models.py
@@ -6,7 +6,7 @@ from django.utils.translation import gettext_lazy as _
 class InterludesActivity(models.Model):
 	"""une activité des interludes (i.e. JDR, murder)..."""
 	title = models.CharField("Titre", max_length=200)
-	duration = models.TimeField("Durée")
+	duration = models.DurationField("Durée")
 	host_name = models.CharField("Nom de l'organisateur", max_length=50)
 	host_email = models.EmailField("Email de l'organisateur")
 	description = models.TextField("Description", max_length=2000)