Index: finkwave/src/main/java/com/ukim/finki/develop/finkwave/controller/AllController.java
===================================================================
--- finkwave/src/main/java/com/ukim/finki/develop/finkwave/controller/AllController.java	(revision ab9c16a0da3bff204136a8d411a4885f80d3f16e)
+++ finkwave/src/main/java/com/ukim/finki/develop/finkwave/controller/AllController.java	(revision 4063ae02d3571017ce6ab0f099fb83bcf055ffcd)
@@ -2,11 +2,10 @@
 
 import com.ukim.finki.develop.finkwave.model.Admin;
-import com.ukim.finki.develop.finkwave.model.Event;
-import com.ukim.finki.develop.finkwave.model.User;
+import com.ukim.finki.develop.finkwave.model.EventProjection;
 import com.ukim.finki.develop.finkwave.repository.AdminRepository;
 import com.ukim.finki.develop.finkwave.repository.EventRepository;
-import com.ukim.finki.develop.finkwave.service.UserService;
+import com.ukim.finki.develop.finkwave.repository.ListenRepository;
+import com.ukim.finki.develop.finkwave.repository.SongRepository;
 import lombok.AllArgsConstructor;
-import lombok.RequiredArgsConstructor;
 import org.springframework.http.HttpEntity;
 import org.springframework.http.ResponseEntity;
@@ -17,4 +16,5 @@
 
 import java.util.List;
+import java.util.Map;
 
 @RestController
@@ -25,4 +25,5 @@
     private final AdminRepository adminRepository;
     private final EventRepository eventRepository;
+    private final ListenRepository listenRepository;
 
     @GetMapping("/admins")
@@ -31,6 +32,11 @@
     }
     @GetMapping("/events")
-    public HttpEntity<List<Event>> getAllEvents(){
-        return ResponseEntity.ok(eventRepository.findAll());
+    public HttpEntity<List<EventProjection>> getAllEvents(){
+        return ResponseEntity.ok(eventRepository.findAllByLocation("Skopje, Macedonia"));
+    }
+    @GetMapping("/listens")
+    public HttpEntity<Map<String,?>> getAllListen(){
+        return ResponseEntity.ok(Map.of(
+                "links", listenRepository.findAll().stream().map(s -> s.getSong().getLink()).limit(10).toList()));
     }
 }
Index: finkwave/src/main/java/com/ukim/finki/develop/finkwave/model/Event.java
===================================================================
--- finkwave/src/main/java/com/ukim/finki/develop/finkwave/model/Event.java	(revision ab9c16a0da3bff204136a8d411a4885f80d3f16e)
+++ finkwave/src/main/java/com/ukim/finki/develop/finkwave/model/Event.java	(revision 4063ae02d3571017ce6ab0f099fb83bcf055ffcd)
@@ -1,18 +1,12 @@
 package com.ukim.finki.develop.finkwave.model;
 
+import jakarta.persistence.*;
+import lombok.Getter;
+import lombok.Setter;
 import org.hibernate.annotations.OnDelete;
 import org.hibernate.annotations.OnDeleteAction;
 
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-
-import jakarta.persistence.Column;
-import jakarta.persistence.Entity;
-import jakarta.persistence.FetchType;
-import jakarta.persistence.Id;
-import jakarta.persistence.JoinColumn;
-import jakarta.persistence.ManyToOne;
-import jakarta.persistence.Table;
-import lombok.Getter;
-import lombok.Setter;
+import java.time.LocalDate;
+import java.time.LocalTime;
 
 @Getter
@@ -20,5 +14,4 @@
 @Entity
 @Table(name = "events", schema = "project")
-@JsonIgnoreProperties({"hibernateLazyInitializer", "handler"})
 public class Event {
     @Id
@@ -26,9 +19,18 @@
     private Long id;
 
-    @Column(name = "location", nullable = false, length = Integer.MAX_VALUE)
+    @Column(nullable = false, length = Integer.MAX_VALUE)
+    private String name;
+
+    @Column( nullable = false, length = Integer.MAX_VALUE)
     private String location;
 
-    @Column(name = "venue", nullable = false, length = Integer.MAX_VALUE)
+    @Column(nullable = false, length = Integer.MAX_VALUE)
     private String venue;
+
+    @Column(nullable = false)
+    private LocalDate date;
+
+    @Column(nullable = false)
+    private LocalTime time;
 
     @ManyToOne(fetch = FetchType.LAZY)
Index: finkwave/src/main/java/com/ukim/finki/develop/finkwave/model/EventProjection.java
===================================================================
--- finkwave/src/main/java/com/ukim/finki/develop/finkwave/model/EventProjection.java	(revision 4063ae02d3571017ce6ab0f099fb83bcf055ffcd)
+++ finkwave/src/main/java/com/ukim/finki/develop/finkwave/model/EventProjection.java	(revision 4063ae02d3571017ce6ab0f099fb83bcf055ffcd)
@@ -0,0 +1,6 @@
+package com.ukim.finki.develop.finkwave.model;
+
+public interface EventProjection {
+    String getLocation();
+    String getVenue();
+}
Index: finkwave/src/main/java/com/ukim/finki/develop/finkwave/model/Listen.java
===================================================================
--- finkwave/src/main/java/com/ukim/finki/develop/finkwave/model/Listen.java	(revision ab9c16a0da3bff204136a8d411a4885f80d3f16e)
+++ finkwave/src/main/java/com/ukim/finki/develop/finkwave/model/Listen.java	(revision 4063ae02d3571017ce6ab0f099fb83bcf055ffcd)
@@ -1,10 +1,13 @@
 package com.ukim.finki.develop.finkwave.model;
 
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
 import jakarta.persistence.*;
 import lombok.Getter;
 import lombok.Setter;
-import org.hibernate.annotations.ColumnDefault;
 import org.hibernate.annotations.OnDelete;
 import org.hibernate.annotations.OnDeleteAction;
+
+import java.time.LocalDateTime;
 
 @Getter
@@ -18,4 +21,5 @@
     @MapsId("listenerId")
     @ManyToOne(fetch = FetchType.LAZY, optional = false)
+    @JsonIgnore
     @OnDelete(action = OnDeleteAction.CASCADE)
     @JoinColumn(name = "listener_id", nullable = false)
@@ -24,11 +28,8 @@
     @MapsId("songId")
     @ManyToOne(fetch = FetchType.LAZY, optional = false)
+    @JsonIgnore
     @OnDelete(action = OnDeleteAction.CASCADE)
     @JoinColumn(name = "song_id", nullable = false)
     private Song song;
 
-    @ColumnDefault("1")
-    @Column(name = "listen_count", nullable = false)
-    private Integer listenCount;
-
 }
Index: finkwave/src/main/java/com/ukim/finki/develop/finkwave/model/ListenId.java
===================================================================
--- finkwave/src/main/java/com/ukim/finki/develop/finkwave/model/ListenId.java	(revision ab9c16a0da3bff204136a8d411a4885f80d3f16e)
+++ finkwave/src/main/java/com/ukim/finki/develop/finkwave/model/ListenId.java	(revision 4063ae02d3571017ce6ab0f099fb83bcf055ffcd)
@@ -7,5 +7,7 @@
 import org.hibernate.Hibernate;
 
+import java.io.Serial;
 import java.io.Serializable;
+import java.time.LocalDateTime;
 import java.util.Objects;
 
@@ -14,4 +16,5 @@
 @Embeddable
 public class ListenId implements Serializable {
+    @Serial
     private static final long serialVersionUID = 7485589950837124664L;
     @Column(name = "listener_id", nullable = false)
@@ -21,4 +24,7 @@
     private Long songId;
 
+    @Column(name = "timestamp", nullable = false)
+    private LocalDateTime timestamp;
+
     @Override
     public boolean equals(Object o) {
@@ -27,10 +33,11 @@
         ListenId entity = (ListenId) o;
         return Objects.equals(this.listenerId, entity.listenerId) &&
-                Objects.equals(this.songId, entity.songId);
+                Objects.equals(this.songId, entity.songId) &&
+                Objects.equals(this.timestamp, ((ListenId) o).timestamp);
     }
 
     @Override
     public int hashCode() {
-        return Objects.hash(listenerId, songId);
+        return Objects.hash(listenerId, songId, timestamp);
     }
 
Index: finkwave/src/main/java/com/ukim/finki/develop/finkwave/model/Song.java
===================================================================
--- finkwave/src/main/java/com/ukim/finki/develop/finkwave/model/Song.java	(revision ab9c16a0da3bff204136a8d411a4885f80d3f16e)
+++ finkwave/src/main/java/com/ukim/finki/develop/finkwave/model/Song.java	(revision 4063ae02d3571017ce6ab0f099fb83bcf055ffcd)
@@ -1,4 +1,5 @@
 package com.ukim.finki.develop.finkwave.model;
 
+import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
 import jakarta.persistence.*;
 import lombok.Getter;
Index: finkwave/src/main/java/com/ukim/finki/develop/finkwave/repository/EventRepository.java
===================================================================
--- finkwave/src/main/java/com/ukim/finki/develop/finkwave/repository/EventRepository.java	(revision ab9c16a0da3bff204136a8d411a4885f80d3f16e)
+++ finkwave/src/main/java/com/ukim/finki/develop/finkwave/repository/EventRepository.java	(revision 4063ae02d3571017ce6ab0f099fb83bcf055ffcd)
@@ -2,8 +2,12 @@
 
 import com.ukim.finki.develop.finkwave.model.Event;
+import com.ukim.finki.develop.finkwave.model.EventProjection;
 import org.springframework.data.jpa.repository.JpaRepository;
 import org.springframework.stereotype.Repository;
 
+import java.util.List;
+
 @Repository
 public interface EventRepository extends JpaRepository<Event, Long> {
+    List<EventProjection> findAllByLocation(String location);
 }
