diff --git a/website/nutriform/admin.py b/website/nutriform/admin.py
index 8c38f3f3dad51e4585f3984282c2a4bec5349c1e..918645fc62d2a09b78eac1d4518f3186e42cd0a9 100644
--- a/website/nutriform/admin.py
+++ b/website/nutriform/admin.py
@@ -1,3 +1,6 @@
 from django.contrib import admin
+from .models import Menu, QuestionQuotid
 
 # Register your models here.
+admin.site.register(Menu)
+admin.site.register(QuestionQuotid)
\ No newline at end of file
diff --git a/website/nutriform/forms.py b/website/nutriform/forms.py
index 69af16cb6e937d7d254eb202e1c74442a7c0dc6d..8284dff0fc68220ba5b649c435d766164a155e60 100644
--- a/website/nutriform/forms.py
+++ b/website/nutriform/forms.py
@@ -5,6 +5,8 @@ from django.contrib.auth.forms import UserCreationForm, UserChangeForm
 from django.core.exceptions import ValidationError
 import os
  
+from .models import QuestionQuotid
+
 class UserForm(UserCreationForm):
 
     class Meta:
@@ -17,4 +19,18 @@ class questionnaireForm(forms.Form):
     type_sport = forms.CharField(max_length=50)
     eau = forms.IntegerField()
     maladie = forms.CharField(max_length=50)
-    poisd = forms.IntegerField()
\ No newline at end of file
+    poisd = forms.IntegerField()
+
+class UserModifForm(forms.ModelForm):
+
+    class Meta:
+        model = User
+        fields  = ('username', 'first_name', 'last_name', 'email')
+
+class QuestionQuotidForm(forms.ModelForm):
+    nbh_activite = forms.IntegerField(min_value=0, label="nombre d'heures d'activité")
+    volume_eau = forms.IntegerField(min_value=0, label="volume d'eau bu ce jour")
+
+    class Meta:
+        model = QuestionQuotid
+        fields = '__all__'
\ No newline at end of file
diff --git a/website/nutriform/migrations/0001_initial.py b/website/nutriform/migrations/0001_initial.py
index 434aa7a766ffb63ffab6c34ab0dbd5e2d1f31443..ed098377316c5c14e6b6e35baa4a24e2f816e2f0 100644
--- a/website/nutriform/migrations/0001_initial.py
+++ b/website/nutriform/migrations/0001_initial.py
@@ -1,4 +1,4 @@
-# Generated by Django 2.2.6 on 2019-10-16 17:07
+# Generated by Django 2.2.6 on 2019-11-06 23:42
 
 from django.db import migrations, models
 
@@ -15,8 +15,30 @@ class Migration(migrations.Migration):
             name='Menu',
             fields=[
                 ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
-                ('nb_plat', models.IntegerField()),
-                ('entree', models.CharField(max_length=150)),
+                ('type_menu', models.CharField(choices=[('sante', 'santé'), ('perte', 'perte de poids'), ('prise', 'prise de masse'), ('cheat', 'cheat day')], max_length=5)),
+                ('nb_cal', models.PositiveIntegerField()),
+                ('entree', models.CharField(choices=[('SAL', 'salade'), ('SOP', 'soupe')], max_length=3)),
+                ('plat', models.CharField(choices=[('PV', 'pâtes viande'), ('LP', 'légumes pommes de terre')], max_length=3)),
+                ('dessert', models.CharField(choices=[('GAT', 'gâteau'), ('YAO', 'yaourt')], default='GAT', max_length=3)),
+            ],
+        ),
+        migrations.CreateModel(
+            name='QuestionQuotid',
+            fields=[
+                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+                ('typeRepas', models.CharField(max_length=3)),
+                ('nbh_activite', models.PositiveIntegerField()),
+                ('volume_eau', models.PositiveIntegerField()),
+                ('maladies', models.CharField(max_length=3)),
+            ],
+        ),
+        migrations.CreateModel(
+            name='Sport',
+            fields=[
+                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+                ('type_sport', models.CharField(max_length=150)),
+                ('nb_seances', models.IntegerField()),
+                ('intensite', models.IntegerField()),
             ],
         ),
     ]
diff --git a/website/nutriform/migrations/0002_auto_20191107_0040.py b/website/nutriform/migrations/0002_auto_20191107_0040.py
new file mode 100644
index 0000000000000000000000000000000000000000..7461301d6a8bdb3660af37c1d32ad79f4a8bf7fb
--- /dev/null
+++ b/website/nutriform/migrations/0002_auto_20191107_0040.py
@@ -0,0 +1,28 @@
+# Generated by Django 2.2.6 on 2019-11-07 00:40
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('nutriform', '0001_initial'),
+    ]
+
+    operations = [
+        migrations.AddField(
+            model_name='questionquotid',
+            name='poids',
+            field=models.PositiveIntegerField(null=True),
+        ),
+        migrations.AlterField(
+            model_name='questionquotid',
+            name='maladies',
+            field=models.CharField(choices=[('RH', 'Rhume'), ('GR', 'Grippe'), ('AN', 'Angine')], max_length=3),
+        ),
+        migrations.AlterField(
+            model_name='questionquotid',
+            name='typeRepas',
+            field=models.CharField(choices=[('sante', 'santé'), ('perte', 'perte de poids'), ('prise', 'prise de masse'), ('cheat', 'cheat day')], max_length=5),
+        ),
+    ]
diff --git a/website/nutriform/models.py b/website/nutriform/models.py
index d6619ca25b0eebfaf50ee7648aebf35566ed6bfe..843c8bdb330664badf227f47fbdf64e04aff0064 100644
--- a/website/nutriform/models.py
+++ b/website/nutriform/models.py
@@ -4,11 +4,52 @@ from django.contrib.auth.models import User
 # Create your models here.
 User._meta.get_field('email')._unique = True
 
+TYPEMENU_CHOICES = [
+    ('sante','santé'),
+    ('perte','perte de poids'),
+    ('prise','prise de masse'),
+    ('cheat','cheat day')
+]
+
+ENTREE_CHOICES = [
+    ('SAL','salade'),
+    ('SOP','soupe')
+]
+
+PLAT_CHOICES = [
+    ('PV','pâtes viande'),
+    ('LP','légumes pommes de terre')
+]
+
+DESSERT_CHOICES  =[
+    ('GAT','gâteau'),
+    ('YAO','yaourt')
+]
+
 class Menu(models.Model):
-    type_plat = models.CharField(max_length=150)
-    nb_plat = models.IntegerField()
-    
+    type_menu = models.CharField(max_length=5, choices=TYPEMENU_CHOICES)
+    nb_cal = models.PositiveIntegerField()
+    entree = models.CharField(max_length=3, choices=ENTREE_CHOICES)
+    plat = models.CharField(max_length=3, choices=PLAT_CHOICES)
+    dessert = models.CharField(max_length=3, choices=DESSERT_CHOICES, default='GAT')
+        
+    def __str__(self):
+        return self.type_menu
+
 class Sport(models.Model):
     type_sport = models.CharField(max_length=150)
     nb_seances = models.IntegerField()
-    intensite = models.IntegerField() 
\ No newline at end of file
+    intensite = models.IntegerField()
+
+MALADIES_CHOICES = [
+    ('RH', 'Rhume'),
+    ('GR', 'Grippe'),
+    ('AN', 'Angine')
+]
+
+class QuestionQuotid(models.Model):
+    typeRepas = models.CharField(max_length=5, choices=TYPEMENU_CHOICES)
+    nbh_activite = models.PositiveIntegerField()
+    volume_eau = models.PositiveIntegerField()
+    maladies = models.CharField(max_length=3, choices=MALADIES_CHOICES)
+    poids = models.PositiveIntegerField(null=True)
\ No newline at end of file
diff --git a/website/nutriform/templates/nutriform/compte.html b/website/nutriform/templates/nutriform/compte.html
index 509593ec7d6d884617e3110540c1169094d821b5..70cf4b0a5fc442e7263558e09111a565abef917f 100644
--- a/website/nutriform/templates/nutriform/compte.html
+++ b/website/nutriform/templates/nutriform/compte.html
@@ -8,7 +8,11 @@
     <h3>Mes informations diverses</h3>
     <p>Informations blabla</p>
 
-    <a href="{%url 'password_change'%}" class="button">Modifier mon mot de passe</a>
+    <a href="{% url 'password_change' %}" class="button">Modifier mon mot de passe</a>
+
+    <a href="{% url 'modif_compte' %}" class="button">Modifier mon compte</a>
+
+    <a href="{% url 'questionnaire' %}" class="button">Questionnaire quotidien</a>
 
 </div class="container">
 {% endblock %}
\ No newline at end of file
diff --git a/website/nutriform/templates/nutriform/index.html b/website/nutriform/templates/nutriform/index.html
index 4409d53d496f95899bc62776eb0cf06892c179f0..0d5dbd7a8c17b5f8835114be29a7e3d3060daea5 100644
--- a/website/nutriform/templates/nutriform/index.html
+++ b/website/nutriform/templates/nutriform/index.html
@@ -92,8 +92,7 @@
 				</div>
 			</div>
 			<ul class="actions">
-				<li><a href="#" class="button special big">Perte de poids</a></li>
-				<li><a href="#" class="button big">Entretien</a></li>
+				<li><a href="{% url 'menus' %}" class="button special big">Découvrez nos menus</a></li>
 			</ul>
 		</div>
 	</section>
diff --git a/website/nutriform/templates/nutriform/menus.html b/website/nutriform/templates/nutriform/menus.html
new file mode 100644
index 0000000000000000000000000000000000000000..43ccd421fc41bf84bd1f436c27a5d57fb67b5cee
--- /dev/null
+++ b/website/nutriform/templates/nutriform/menus.html
@@ -0,0 +1,37 @@
+{% extends "../nutriform/base.html" %}
+
+{% block content %}
+
+<div class="container">
+
+    <header class="major">
+        <h2>Liste des menus disponibles</h2>
+        <p>Cete liste est vouée à évoluer perpétuellement</p>    
+    </header>
+  
+    <div class="table-wrapper">
+        <table class="alt">
+            <thead>
+                <tr>
+                    <th>Type de menu</th>
+                    <th>Nombre de caolories</th>
+                    <th>Entrée</th>
+                    <th>Plat</th>
+                    <th>Dessert</th>
+                </tr>
+            </thead>
+            <tbody>
+                {% for menu in listmenus %}
+                <tr>
+                    <td>{{ menu.get_type_menu_display}}</td>
+                    <td>{{ menu.nb_cal }}</td>
+                    <td>{{ menu.get_entree_display }}</td>
+                    <td>{{ menu.get_plat_display }}</td>
+                    <td>{{ menu.get_dessert_display }}</td>
+                </tr>
+                {% endfor %}
+            </tbody>
+        </table>
+    </div>
+</div class="container">
+{% endblock %}
\ No newline at end of file
diff --git a/website/nutriform/templates/nutriform/modif_compte.html b/website/nutriform/templates/nutriform/modif_compte.html
new file mode 100644
index 0000000000000000000000000000000000000000..137de4a8fac2b4b09d62f987181db77b47bd556e
--- /dev/null
+++ b/website/nutriform/templates/nutriform/modif_compte.html
@@ -0,0 +1,16 @@
+{% extends "../nutriform/base.html" %}
+
+{% block content %}
+
+<div class="container">
+
+    <h3>Modification du compte {{ user.username }}</h3>
+
+    <form action="" method="POST">
+        {% csrf_token %}
+
+        {{form}}
+        <input type="submit" value="Modifier">
+    </form>
+</div class="container">
+{% endblock %}
\ No newline at end of file
diff --git a/website/nutriform/templates/nutriform/questionnaire.html b/website/nutriform/templates/nutriform/questionnaire.html
new file mode 100644
index 0000000000000000000000000000000000000000..98e2af8a3409c59dd34bf5186078e0df7d021292
--- /dev/null
+++ b/website/nutriform/templates/nutriform/questionnaire.html
@@ -0,0 +1,18 @@
+{% extends "../nutriform/base.html" %}
+
+{% block content %}
+
+<div class="container">
+
+    <h3>Questionnaire quotidien</h3>
+    <p>Ce questinonaire permet de vous proposer des services plus personnalisés et adaptés à vos besoins</p>
+
+    <form action="" method="POST">
+        {% csrf_token %}
+
+        {{ form }}
+
+        <input type="submit" value="Enregistrer">
+    </form>
+</div class="container">
+{% endblock %}
\ No newline at end of file
diff --git a/website/nutriform/urls.py b/website/nutriform/urls.py
index 743fd1abe9f1b2ee44946b088d8d956d38860c2c..dfe73e774f638e2f0e7bab66a0569275cb2827f3 100644
--- a/website/nutriform/urls.py
+++ b/website/nutriform/urls.py
@@ -8,5 +8,8 @@ urlpatterns = [
 	path('register/', views.register, name='register'),
 	path('accounts/profile/', views.compte, name='compte'),
 	path('aboutus', views.aboutus, name="aboutus"),
-	path('accounts/', include('django.contrib.auth.urls'))
+	path('accounts/', include('django.contrib.auth.urls')),
+	path('menus/', views.menus, name='menus'),
+	path('accounts/profile/modification/', views.modif_compte, name='modif_compte'),
+	path('accounts/questionnaire/', views.question_quotid, name='questionnaire')
 ]
diff --git a/website/nutriform/views.py b/website/nutriform/views.py
index 0e4060a1e6104021c90ea8fd5c247beaa6f15223..c93c7908058c1a3a2722edc07e199694da18428d 100644
--- a/website/nutriform/views.py
+++ b/website/nutriform/views.py
@@ -2,8 +2,10 @@ from django.shortcuts import render, get_object_or_404, redirect
 from django.http import HttpResponse
 from django.core.mail import send_mail
 from django.contrib.auth.decorators import login_required
+from django.contrib.auth.forms import UserChangeForm
 
-from .forms import UserForm
+from .forms import UserForm, UserModifForm, QuestionQuotidForm
+from .models import Menu, QuestionQuotid
 
 def index(request):
 	if request.method == 'POST' :
@@ -38,4 +40,46 @@ def compte(request):
 	return render(request, 'nutriform/compte.html')
 
 def aboutus(request):
-	return render(request, 'nutriform/aboutus.html')
\ No newline at end of file
+	return render(request, 'nutriform/aboutus.html')
+
+def menus(request):
+	listmenus = list(Menu.objects.all())
+	context = {
+		'listmenus':listmenus
+	}
+	return render(request, 'nutriform/menus.html', context)
+
+@login_required
+def modif_compte(request):
+	user = request.user
+
+	if request.method == 'POST':
+		form = UserModifForm(request.POST, instance=user)
+		if form.is_valid():
+			user = form.save()
+			return redirect('compte')
+
+	else :
+		form = UserModifForm(instance=user)
+
+	context	= {
+		'form': form,
+	}
+	return render(request, 'nutriform/modif_compte.html', context)
+
+@login_required
+def question_quotid(request):
+
+	if request.method == 'POST':
+		form = QuestionQuotidForm(request.POST)
+		if form.is_valid():
+			form.save()
+			return redirect('compte')
+
+	else :
+		form = QuestionQuotidForm()
+	
+	context = {
+		'form':form,
+	}
+	return render(request, 'nutriform/questionnaire.html', context)
\ No newline at end of file