{% block title %}Notes{% endblock %}
 
 {% block content %}
-  {% for note in notes %}
+  {% for note in notes_page %}
   <article class="container mt-5">
     <h2>{{ note.title }}</h2>
     <p>ID: {{ note.id }}</p>
   <p>No notes</p>
   {% endfor %}
 
+  <ul class="pagination">
+    {% for page in pages %}
+      {% ifnotequal page.number page_number %}
+        <li class="page-item"><a href="?page={{ page.number }}" class="page-link">{{ page.number }}</a></li>
+      {% else %}
+        <li class="page-item active"><span class="page-link">{{ page.number }}</span></li>
+      {% endifnotequal %}
+    {% endfor %}
+  </ul>
+
   <p>Number of notes: {{ notes_count }}</p>
 {% endblock %}
\ No newline at end of file
 
 from django.shortcuts import render, get_object_or_404
+from django.core.paginator import Paginator
+
+from pcdenotes.settings import NOTES_PER_PAGE
 from .models import Note
 
 # Create your views here.
 def note_list(request):
     notes = Note.objects.filter(status=1)
     notes_count = Note.objects.filter(status=1).count()
-    return render(request, 'note_list.html', {'notes': notes, 'notes_count': notes_count})
+    paginator = Paginator(notes, NOTES_PER_PAGE)
+
+    page_number = 1
+
+    try:
+        page_number = int(request.GET.get('page'))
+    except:
+        pass
+    
+    notes_page = paginator.get_page(page_number)
+
+    return render(request, 'note_list.html', {'notes_page': notes_page, 'notes_count': notes_count, 'pages': paginator, 'page_number': page_number})
 
 def note_detail(request, note_slug):
     note = get_object_or_404(Note, slug=note_slug, status=1)