diff --git a/osinaweb/osinacore/templates/listing_pages/adressbooks.html b/osinaweb/osinacore/templates/listing_pages/adressbooks.html
index 8691b2f8..6b7d3ed0 100644
--- a/osinaweb/osinacore/templates/listing_pages/adressbooks.html
+++ b/osinaweb/osinacore/templates/listing_pages/adressbooks.html
@@ -13,12 +13,15 @@
class="w-full py-4 px-3 bg-gray-200 rounded-md shadow-md mt-4 flex flex-col s:flex-row justify-between gap-3 items-center">
diff --git a/osinaweb/osinacore/views.py b/osinaweb/osinacore/views.py
index 3a47cc8d..68a1496b 100644
--- a/osinaweb/osinacore/views.py
+++ b/osinaweb/osinacore/views.py
@@ -864,9 +864,16 @@ def addressbook(request):
Group.objects.get_or_create(name='Test Group 2')
Group.objects.get_or_create(name='Test Group 3')
Group.objects.get_or_create(name='Test Group 4')
-
+ query = request.GET.get('q', '')
addresses = AddressBook.objects.all()
+ if query:
+ addresses = addresses.filter(
+ Q(first_name__icontains=query) |
+ Q(middle_name__icontains=query) |
+ Q(last_name__icontains=query)
+ ).distinct()
+
context = {
'addresses' : addresses,