Index: ChapterX.API/ChapterX.API.csproj
===================================================================
--- ChapterX.API/ChapterX.API.csproj	(revision a6e33d1f34c0dbbfff38bfb2c73eea32abfe7cff)
+++ ChapterX.API/ChapterX.API.csproj	(revision 877c13c3dd0934c1d31da7988d0d2c2c5925ed55)
@@ -8,5 +8,4 @@
 
   <ItemGroup>
-    <PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="9.0.0" />
     <PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="9.0.0">
       <PrivateAssets>all</PrivateAssets>
Index: ChapterX.API/Controllers/AISuggestionsController.cs
===================================================================
--- ChapterX.API/Controllers/AISuggestionsController.cs	(revision a6e33d1f34c0dbbfff38bfb2c73eea32abfe7cff)
+++ ChapterX.API/Controllers/AISuggestionsController.cs	(revision 877c13c3dd0934c1d31da7988d0d2c2c5925ed55)
@@ -5,5 +5,4 @@
 using Microsoft.AspNetCore.Mvc;
 using Microsoft.Extensions.Logging;
-using System.Linq;
 
 namespace ChapterX.API.Controllers
@@ -38,24 +37,4 @@
             var response = await _mediator.Send(new GetRequest(id));
             return Ok(response);
-        }
-
-        [HttpGet("chapter/{chapterId:int}")]
-        [AllowAnonymous]
-        public async Task<ActionResult> GetByChapter(int chapterId)
-        {
-            _logger.LogInformation("Fetching AI suggestions for ChapterId: {ChapterId}", chapterId);
-            var response = await _mediator.Send(new GetByChapterRequest(chapterId));
-            var result = response.AISuggestions.Select(s => new
-            {
-                id = s.Id,
-                originalText = s.OriginalText,
-                suggestedText = s.SuggestedText,
-                accepted = s.Accepted,
-                createdAt = s.CreatedAt,
-                appliedAt = s.AppliedAt,
-                storyId = s.StoryId,
-                suggestionTypes = s.SuggestionTypes.Select(t => t.SuggestionTypeValue),
-            });
-            return Ok(result);
         }
 
Index: ChapterX.API/Controllers/AdminsController.cs
===================================================================
--- ChapterX.API/Controllers/AdminsController.cs	(revision a6e33d1f34c0dbbfff38bfb2c73eea32abfe7cff)
+++ ChapterX.API/Controllers/AdminsController.cs	(revision 877c13c3dd0934c1d31da7988d0d2c2c5925ed55)
@@ -40,5 +40,5 @@
 
         [HttpPost]
-        [Authorize(Roles = "Admin")]
+        [Authorize]
         public async Task<ActionResult> Add([FromBody] AddRequest request)
         {
@@ -49,5 +49,5 @@
 
         [HttpPut("{id:int}")]
-        [Authorize(Roles = "Admin")]
+        [Authorize]
         public async Task<ActionResult> Update(int id, [FromBody] UpdateRequest request)
         {
@@ -63,5 +63,5 @@
 
         [HttpDelete("{id:int}")]
-        [Authorize(Roles = "Admin")]
+        [Authorize]
         public async Task<ActionResult> Delete(int id)
         {
Index: ChapterX.API/Controllers/AuthController.cs
===================================================================
--- ChapterX.API/Controllers/AuthController.cs	(revision a6e33d1f34c0dbbfff38bfb2c73eea32abfe7cff)
+++ 	(revision )
@@ -1,35 +1,0 @@
-using ChapterX.Application.Auth;
-using MediatR;
-using Microsoft.AspNetCore.Authorization;
-using Microsoft.AspNetCore.Mvc;
-
-namespace ChapterX.API.Controllers
-{
-    [Route("api/[controller]")]
-    [ApiController]
-    public class AuthController : ControllerBase
-    {
-        private readonly IMediator _mediator;
-
-        public AuthController(IMediator mediator)
-        {
-            _mediator = mediator;
-        }
-
-        [HttpPost("register")]
-        [AllowAnonymous]
-        public async Task<ActionResult> Register([FromBody] RegisterRequest request)
-        {
-            var response = await _mediator.Send(request);
-            return Ok(response);
-        }
-
-        [HttpPost("login")]
-        [AllowAnonymous]
-        public async Task<ActionResult> Login([FromBody] LoginRequest request)
-        {
-            var response = await _mediator.Send(request);
-            return Ok(response);
-        }
-    }
-}
Index: ChapterX.API/Controllers/ChaptersController.cs
===================================================================
--- ChapterX.API/Controllers/ChaptersController.cs	(revision a6e33d1f34c0dbbfff38bfb2c73eea32abfe7cff)
+++ ChapterX.API/Controllers/ChaptersController.cs	(revision 877c13c3dd0934c1d31da7988d0d2c2c5925ed55)
@@ -1,10 +1,8 @@
 using ChapterX.Application.Chapter.Commands;
 using ChapterX.Application.Chapter.Queries;
-using ChapterX.Domain.Repositories;
 using MediatR;
 using Microsoft.AspNetCore.Authorization;
 using Microsoft.AspNetCore.Mvc;
 using Microsoft.Extensions.Logging;
-using System.Security.Claims;
 
 namespace ChapterX.API.Controllers
@@ -15,11 +13,9 @@
     {
         private readonly IMediator _mediator;
-        private readonly IChapterRepository _chapterRepository;
         private readonly ILogger<ChaptersController> _logger;
 
-        public ChaptersController(IMediator mediator, IChapterRepository chapterRepository, ILogger<ChaptersController> logger)
+        public ChaptersController(IMediator mediator, ILogger<ChaptersController> logger)
         {
             _mediator = mediator;
-            _chapterRepository = chapterRepository;
             _logger = logger;
         }
@@ -43,14 +39,5 @@
         }
 
-        [HttpPatch("{id:int}/view")]
-        [AllowAnonymous]
-        public async Task<ActionResult> IncrementView(int id)
-        {
-            await _chapterRepository.IncrementViewCountAsync(id);
-            return NoContent();
-        }
-
         [HttpPost]
-        [Authorize]
         public async Task<ActionResult> Add([FromBody] AddRequest request)
         {
@@ -70,6 +57,5 @@
             }
 
-            var callerId = int.Parse(User.FindFirstValue(ClaimTypes.NameIdentifier)!);
-            var response = await _mediator.Send(request with { CallerId = callerId });
+            var response = await _mediator.Send(request);
             return Ok(response);
         }
@@ -80,6 +66,5 @@
         {
             _logger.LogInformation("Deleting chapter with ID: {ChapterId}", id);
-            var callerId = int.Parse(User.FindFirstValue(ClaimTypes.NameIdentifier)!);
-            var response = await _mediator.Send(new DeleteRequest(id, callerId));
+            var response = await _mediator.Send(new DeleteRequest(id));
             return Ok(response);
         }
Index: ChapterX.API/Controllers/CollaborationsController.cs
===================================================================
--- ChapterX.API/Controllers/CollaborationsController.cs	(revision a6e33d1f34c0dbbfff38bfb2c73eea32abfe7cff)
+++ ChapterX.API/Controllers/CollaborationsController.cs	(revision 877c13c3dd0934c1d31da7988d0d2c2c5925ed55)
@@ -1,5 +1,4 @@
 using ChapterX.Application.Collaboration.Commands;
 using ChapterX.Application.Collaboration.Queries;
-using ChapterX.Domain.Repositories;
 using MediatR;
 using Microsoft.AspNetCore.Authorization;
@@ -14,11 +13,9 @@
     {
         private readonly IMediator _mediator;
-        private readonly ICollaborationRepository _collaborationRepository;
         private readonly ILogger<CollaborationsController> _logger;
 
-        public CollaborationsController(IMediator mediator, ICollaborationRepository collaborationRepository, ILogger<CollaborationsController> logger)
+        public CollaborationsController(IMediator mediator, ILogger<CollaborationsController> logger)
         {
             _mediator = mediator;
-            _collaborationRepository = collaborationRepository;
             _logger = logger;
         }
@@ -29,24 +26,6 @@
         {
             _logger.LogInformation("Fetching all collaborations");
-            var collabs = await _collaborationRepository.GetAllAsync();
-            var result = collabs.Select(c => new
-            {
-                id = c.Id,
-                userId = c.UserId,
-                storyId = c.StoryId,
-                username = c.User != null ? c.User.Username : "",
-                name = c.User != null ? c.User.Name : "",
-                createdAt = c.CreatedAt,
-            });
-            return Ok(result);
-        }
-
-        [HttpDelete("user/{userId:int}/story/{storyId:int}")]
-        [Authorize]
-        public async Task<ActionResult> DeleteByUserAndStory(int userId, int storyId)
-        {
-            var deleted = await _collaborationRepository.DeleteByUserAndStoryAsync(userId, storyId);
-            if (!deleted) return NotFound();
-            return Ok();
+            var response = await _mediator.Send(new GetAllRequest());
+            return Ok(response);
         }
 
Index: ChapterX.API/Controllers/CommentsController.cs
===================================================================
--- ChapterX.API/Controllers/CommentsController.cs	(revision a6e33d1f34c0dbbfff38bfb2c73eea32abfe7cff)
+++ ChapterX.API/Controllers/CommentsController.cs	(revision 877c13c3dd0934c1d31da7988d0d2c2c5925ed55)
@@ -1,10 +1,8 @@
 using ChapterX.Application.Comment.Commands;
 using ChapterX.Application.Comment.Queries;
-using ChapterX.Domain.Repositories;
 using MediatR;
 using Microsoft.AspNetCore.Authorization;
 using Microsoft.AspNetCore.Mvc;
 using Microsoft.Extensions.Logging;
-using System.Security.Claims;
 
 namespace ChapterX.API.Controllers
@@ -15,29 +13,10 @@
     {
         private readonly IMediator _mediator;
-        private readonly ICommentRepository _commentRepository;
         private readonly ILogger<CommentsController> _logger;
 
-        public CommentsController(IMediator mediator, ICommentRepository commentRepository, ILogger<CommentsController> logger)
+        public CommentsController(IMediator mediator, ILogger<CommentsController> logger)
         {
             _mediator = mediator;
-            _commentRepository = commentRepository;
             _logger = logger;
-        }
-
-        [HttpGet("story/{storyId:int}")]
-        [AllowAnonymous]
-        public async Task<ActionResult> GetByStory(int storyId)
-        {
-            var comments = await _commentRepository.GetByStoryIdAsync(storyId);
-            var result = comments.Select(c => new
-            {
-                id = c.Id,
-                content = c.Content,
-                userId = c.UserId,
-                storyId = c.StoryId,
-                username = c.User?.Username ?? "",
-                createdAt = c.CreatedAt,
-            });
-            return Ok(result);
         }
 
@@ -64,7 +43,6 @@
         public async Task<ActionResult> Add([FromBody] AddRequest request)
         {
-            var callerId = int.Parse(User.FindFirstValue(ClaimTypes.NameIdentifier)!);
             _logger.LogInformation("Adding a new comment");
-            var response = await _mediator.Send(request with { UserId = callerId });
+            var response = await _mediator.Send(request);
             return Ok(response);
         }
@@ -80,6 +58,5 @@
             }
 
-            var callerId = int.Parse(User.FindFirstValue(ClaimTypes.NameIdentifier)!);
-            var response = await _mediator.Send(request with { CallerId = callerId });
+            var response = await _mediator.Send(request);
             return Ok(response);
         }
@@ -90,6 +67,5 @@
         {
             _logger.LogInformation("Deleting comment with ID: {CommentId}", id);
-            var callerId = int.Parse(User.FindFirstValue(ClaimTypes.NameIdentifier)!);
-            var response = await _mediator.Send(new DeleteRequest(id, callerId));
+            var response = await _mediator.Send(new DeleteRequest(id));
             return Ok(response);
         }
Index: ChapterX.API/Controllers/LikesController.cs
===================================================================
--- ChapterX.API/Controllers/LikesController.cs	(revision a6e33d1f34c0dbbfff38bfb2c73eea32abfe7cff)
+++ ChapterX.API/Controllers/LikesController.cs	(revision 877c13c3dd0934c1d31da7988d0d2c2c5925ed55)
@@ -1,5 +1,4 @@
 using ChapterX.Application.Likes.Commands;
 using ChapterX.Application.Likes.Queries;
-using ChapterX.Domain.Repositories;
 using MediatR;
 using Microsoft.AspNetCore.Authorization;
@@ -14,29 +13,10 @@
     {
         private readonly IMediator _mediator;
-        private readonly ILikesRepository _likesRepository;
         private readonly ILogger<LikesController> _logger;
 
-        public LikesController(IMediator mediator, ILikesRepository likesRepository, ILogger<LikesController> logger)
+        public LikesController(IMediator mediator, ILogger<LikesController> logger)
         {
             _mediator = mediator;
-            _likesRepository = likesRepository;
             _logger = logger;
-        }
-
-        [HttpGet("story/{storyId:int}")]
-        [AllowAnonymous]
-        public async Task<ActionResult> GetByStory(int storyId)
-        {
-            var likes = await _likesRepository.GetByStoryIdAsync(storyId);
-            return Ok(new { count = likes.Count(), userIds = likes.Select(l => l.UserId).ToList() });
-        }
-
-        [HttpDelete("user/{userId:int}/story/{storyId:int}")]
-        [Authorize]
-        public async Task<ActionResult> DeleteByUserAndStory(int userId, int storyId)
-        {
-            var deleted = await _likesRepository.DeleteByUserAndStoryAsync(userId, storyId);
-            if (!deleted) return NotFound();
-            return Ok();
         }
 
@@ -63,7 +43,5 @@
         public async Task<ActionResult> Add([FromBody] AddRequest request)
         {
-            _logger.LogInformation("Adding a new like for StoryId: {StoryId}", request.StoryId);
-            var exists = await _likesRepository.ExistsAsync(request.UserId, request.StoryId);
-            if (exists) return Ok();
+            _logger.LogInformation("Adding a new like for ChapterId: {ChapterId}", request.ChapterId);
             var response = await _mediator.Send(request);
             return Ok(response);
Index: ChapterX.API/Controllers/NotificationsController.cs
===================================================================
--- ChapterX.API/Controllers/NotificationsController.cs	(revision a6e33d1f34c0dbbfff38bfb2c73eea32abfe7cff)
+++ ChapterX.API/Controllers/NotificationsController.cs	(revision 877c13c3dd0934c1d31da7988d0d2c2c5925ed55)
@@ -1,5 +1,4 @@
 using ChapterX.Application.Notification.Commands;
 using ChapterX.Application.Notification.Queries;
-using ChapterX.Domain.Repositories;
 using MediatR;
 using Microsoft.AspNetCore.Authorization;
@@ -14,40 +13,10 @@
     {
         private readonly IMediator _mediator;
-        private readonly INotificationRepository _notificationRepository;
         private readonly ILogger<NotificationsController> _logger;
 
-        public NotificationsController(IMediator mediator, INotificationRepository notificationRepository, ILogger<NotificationsController> logger)
+        public NotificationsController(IMediator mediator, ILogger<NotificationsController> logger)
         {
             _mediator = mediator;
-            _notificationRepository = notificationRepository;
             _logger = logger;
-        }
-
-        [HttpGet("user/{userId:int}")]
-        [Authorize]
-        public async Task<ActionResult> GetByUser(int userId)
-        {
-            var notifications = await _notificationRepository.GetByUserIdAsync(userId);
-            var result = notifications.Select(n => new
-            {
-                id = n.Id,
-                content = n.Content,
-                isRead = n.IsRead,
-                createdAt = n.CreatedAt,
-                type = n.Type ?? "info",
-                link = n.Link,
-            });
-            return Ok(result);
-        }
-
-        [HttpPut("{id:int}/read")]
-        [Authorize]
-        public async Task<ActionResult> MarkRead(int id)
-        {
-            var notification = await _notificationRepository.GetByIdAsync(id);
-            if (notification == null) return NotFound();
-            notification.IsRead = true;
-            await _notificationRepository.UpdateAsync(notification);
-            return Ok();
         }
 
Index: ChapterX.API/Controllers/ReadingListItemsController.cs
===================================================================
--- ChapterX.API/Controllers/ReadingListItemsController.cs	(revision a6e33d1f34c0dbbfff38bfb2c73eea32abfe7cff)
+++ ChapterX.API/Controllers/ReadingListItemsController.cs	(revision 877c13c3dd0934c1d31da7988d0d2c2c5925ed55)
@@ -1,5 +1,4 @@
 using ChapterX.Application.ReadingListItems.Commands;
 using ChapterX.Application.ReadingListItems.Queries;
-using ChapterX.Domain.Repositories;
 using MediatR;
 using Microsoft.AspNetCore.Authorization;
@@ -14,11 +13,9 @@
     {
         private readonly IMediator _mediator;
-        private readonly IReadingListItemsRepository _readingListItemsRepository;
         private readonly ILogger<ReadingListItemsController> _logger;
 
-        public ReadingListItemsController(IMediator mediator, IReadingListItemsRepository readingListItemsRepository, ILogger<ReadingListItemsController> logger)
+        public ReadingListItemsController(IMediator mediator, ILogger<ReadingListItemsController> logger)
         {
             _mediator = mediator;
-            _readingListItemsRepository = readingListItemsRepository;
             _logger = logger;
         }
@@ -73,13 +70,4 @@
             return Ok(response);
         }
-
-        [HttpDelete("{listId:int}/story/{storyId:int}")]
-        [Authorize]
-        public async Task<ActionResult> DeleteByListAndStory(int listId, int storyId)
-        {
-            _logger.LogInformation("Removing story {StoryId} from list {ListId}", storyId, listId);
-            var deleted = await _readingListItemsRepository.DeleteByListAndStoryAsync(listId, storyId);
-            return deleted ? Ok() : NotFound();
-        }
     }
 }
Index: ChapterX.API/Controllers/ReadingListsController.cs
===================================================================
--- ChapterX.API/Controllers/ReadingListsController.cs	(revision a6e33d1f34c0dbbfff38bfb2c73eea32abfe7cff)
+++ ChapterX.API/Controllers/ReadingListsController.cs	(revision 877c13c3dd0934c1d31da7988d0d2c2c5925ed55)
@@ -1,5 +1,4 @@
 using ChapterX.Application.ReadingList.Commands;
 using ChapterX.Application.ReadingList.Queries;
-using ChapterX.Domain.Repositories;
 using MediatR;
 using Microsoft.AspNetCore.Authorization;
@@ -14,22 +13,10 @@
     {
         private readonly IMediator _mediator;
-        private readonly IReadingListRepository _readingListRepository;
         private readonly ILogger<ReadingListsController> _logger;
 
-        public ReadingListsController(IMediator mediator, IReadingListRepository readingListRepository, ILogger<ReadingListsController> logger)
+        public ReadingListsController(IMediator mediator, ILogger<ReadingListsController> logger)
         {
             _mediator = mediator;
-            _readingListRepository = readingListRepository;
             _logger = logger;
-        }
-
-        [HttpGet("user/{userId:int}")]
-        [Authorize]
-        public async Task<ActionResult> GetByUser(int userId)
-        {
-            _logger.LogInformation("Fetching reading lists for user {UserId}", userId);
-            var lists = await _readingListRepository.GetByUserIdAsync(userId);
-            var result = lists.Select(l => MapList(l));
-            return Ok(result);
         }
 
@@ -39,28 +26,7 @@
         {
             _logger.LogInformation("Fetching all reading lists");
-            var lists = await _readingListRepository.GetAllAsync();
-            var result = lists.Select(l => MapList(l));
-            return Ok(result);
+            var response = await _mediator.Send(new GetAllRequest());
+            return Ok(response);
         }
-
-        private static object MapList(Domain.Entities.ReadingList l) => new
-        {
-            id = l.Id,
-            name = l.Name,
-            content = l.Content,
-            isPublic = l.IsPublic,
-            userId = l.UserId,
-            createdAt = l.CreatedAt,
-            username = l.User?.Username ?? "",
-            readingListItems = l.ReadingListItems.Select(i => new
-            {
-                listId = i.ListId,
-                storyId = i.StoryId,
-                addedAt = i.AddedAt,
-                storyTitle = i.Story?.ShortDescription ?? "",
-                authorUsername = i.Story?.Writer?.User?.Username ?? "",
-                genres = i.Story?.HasGenres.Select(hg => hg.Genre?.Name).Where(n => n != null).ToList() ?? []
-            }).ToList()
-        };
 
         [HttpGet("{id:int}")]
Index: ChapterX.API/Controllers/StoriesController.cs
===================================================================
--- ChapterX.API/Controllers/StoriesController.cs	(revision a6e33d1f34c0dbbfff38bfb2c73eea32abfe7cff)
+++ ChapterX.API/Controllers/StoriesController.cs	(revision 877c13c3dd0934c1d31da7988d0d2c2c5925ed55)
@@ -5,5 +5,4 @@
 using Microsoft.AspNetCore.Mvc;
 using Microsoft.Extensions.Logging;
-using System.Security.Claims;
 
 namespace ChapterX.API.Controllers
@@ -29,22 +28,5 @@
             _logger.LogInformation("Fetching all stories");
             var response = await _mediator.Send(request);
-            var stories = response.Stories.Select(s => new
-            {
-                id = s.Id,
-                userId = s.UserId,
-                title = s.Title,
-                shortDescription = s.ShortDescription,
-                image = s.Image,
-                content = s.Content,
-                matureContent = s.MatureContent,
-                createdAt = s.CreatedAt,
-                updatedAt = s.UpdatedAt,
-                writer = s.Writer == null ? null : new { user = s.Writer.User == null ? null : new { username = s.Writer.User.Username } },
-                hasGenres = s.HasGenres.Select(hg => new { genre = new { name = hg.Genre?.Name ?? "" } }),
-                likes = s.Likes.Select(l => new { userId = l.UserId }),
-                comments = s.Comments.Select(c => new { id = c.Id }),
-                chapters = s.Chapters.Select(c => new { id = c.Id, viewCount = c.ViewCount }),
-            });
-            return Ok(new { stories });
+            return Ok(response);
         }
 
@@ -56,23 +38,5 @@
             _logger.LogInformation("Fetching story with ID: {StoryId}", id);
             var response = await _mediator.Send(new GetRequest(id));
-            if (response.Story == null) return NotFound();
-            var s = response.Story;
-            return Ok(new
-            {
-                id = s.Id,
-                userId = s.UserId,
-                title = s.Title,
-                shortDescription = s.ShortDescription,
-                image = s.Image,
-                content = s.Content,
-                matureContent = s.MatureContent,
-                createdAt = s.CreatedAt,
-                updatedAt = s.UpdatedAt,
-                writer = s.Writer == null ? null : new { user = s.Writer.User == null ? null : new { username = s.Writer.User.Username } },
-                hasGenres = s.HasGenres.Select(hg => new { genre = new { name = hg.Genre?.Name ?? "" } }),
-                likes = s.Likes.Select(l => new { userId = l.UserId }),
-                comments = s.Comments.Select(c => new { id = c.Id }),
-                chapters = s.Chapters.Select(c => new { id = c.Id, viewCount = c.ViewCount }),
-            });
+            return Ok(response);
         }
 
@@ -82,7 +46,6 @@
         public async Task<ActionResult> Add([FromBody] AddRequest request)
         {
-            var callerId = int.Parse(User.FindFirstValue(ClaimTypes.NameIdentifier)!);
-            _logger.LogInformation("Adding a new story for UserId: {UserId}", callerId);
-            var response = await _mediator.Send(request with { UserId = callerId });
+            _logger.LogInformation("Adding a new story for UserId: {UserId}", request.UserId);
+            var response = await _mediator.Send(request);
             return Ok(response);
         }
@@ -99,6 +62,5 @@
             }
 
-            var callerId = int.Parse(User.FindFirstValue(ClaimTypes.NameIdentifier)!);
-            var response = await _mediator.Send(request with { CallerId = callerId });
+            var response = await _mediator.Send(request);
             return Ok(response);
         }
@@ -110,7 +72,5 @@
         {
             _logger.LogInformation("Deleting story with ID: {StoryId}", id);
-            var callerId = int.Parse(User.FindFirstValue(ClaimTypes.NameIdentifier)!);
-            var isAdmin = User.IsInRole("Admin");
-            var response = await _mediator.Send(new DeleteRequest(id, callerId, isAdmin));
+            var response = await _mediator.Send(new DeleteRequest(id));
             return Ok(response);
         }
Index: ChapterX.API/Controllers/UsersController.cs
===================================================================
--- ChapterX.API/Controllers/UsersController.cs	(revision a6e33d1f34c0dbbfff38bfb2c73eea32abfe7cff)
+++ ChapterX.API/Controllers/UsersController.cs	(revision 877c13c3dd0934c1d31da7988d0d2c2c5925ed55)
@@ -5,5 +5,4 @@
 using Microsoft.AspNetCore.Mvc;
 using Microsoft.Extensions.Logging;
-using System.Security.Claims;
 
 namespace ChapterX.API.Controllers
@@ -28,14 +27,5 @@
             _logger.LogInformation("Fetching all users");
             var response = await _mediator.Send(new GetAllRequest());
-            var result = response.Users.Select(u => new
-            {
-                id = u.Id,
-                username = u.Username,
-                name = u.Name,
-                surname = u.Surname,
-                email = u.Email,
-                role = u.Admin != null ? "admin" : u.Writer != null ? "writer" : "regular",
-            });
-            return Ok(result);
+            return Ok(response);
         }
 
@@ -68,9 +58,4 @@
             }
 
-            var callerId = int.Parse(User.FindFirstValue(ClaimTypes.NameIdentifier)!);
-            var isAdmin = User.IsInRole("Admin");
-            if (callerId != id && !isAdmin)
-                return Forbid();
-
             var response = await _mediator.Send(request);
             return Ok(response);
@@ -82,9 +67,4 @@
         {
             _logger.LogInformation("Deleting user with ID: {UserId}", id);
-            var callerId = int.Parse(User.FindFirstValue(ClaimTypes.NameIdentifier)!);
-            var isAdmin = User.IsInRole("Admin");
-            if (callerId != id && !isAdmin)
-                return Forbid();
-
             var response = await _mediator.Send(new DeleteRequest(id));
             return Ok(response);
Index: ChapterX.API/Program.cs
===================================================================
--- ChapterX.API/Program.cs	(revision a6e33d1f34c0dbbfff38bfb2c73eea32abfe7cff)
+++ ChapterX.API/Program.cs	(revision 877c13c3dd0934c1d31da7988d0d2c2c5925ed55)
@@ -1,73 +1,16 @@
 using ChapterX.Application;
 using ChapterX.Infrastructure;
-using Microsoft.AspNetCore.Authentication.JwtBearer;
-using Microsoft.IdentityModel.Tokens;
 using System.Reflection;
-using System.Text;
 
 var builder = WebApplication.CreateBuilder(args);
 
-var jwtKey = builder.Configuration["Jwt:Key"];
-if (string.IsNullOrWhiteSpace(jwtKey))
-    throw new InvalidOperationException("Jwt:Key is not configured. Set it via environment variable DOTNET_Jwt__Key before starting the application.");
-
-builder.Services.AddCors(options =>
-{
-    options.AddPolicy("Frontend", policy =>
-        policy.WithOrigins("http://localhost:5173", "https://localhost:5173")
-              .AllowAnyHeader()
-              .AllowAnyMethod()
-              .AllowCredentials());
-});
-
-builder.Services.AddControllers()
-    .AddJsonOptions(options =>
-    {
-        options.JsonSerializerOptions.ReferenceHandler = System.Text.Json.Serialization.ReferenceHandler.IgnoreCycles;
-    });
+builder.Services.AddControllers();
 builder.Services.AddEndpointsApiExplorer();
 builder.Services.AddSwaggerGen(options =>
 {
     options.CustomSchemaIds(type => type.FullName);
-    options.AddSecurityDefinition("Bearer", new Microsoft.OpenApi.Models.OpenApiSecurityScheme
-    {
-        Name = "Authorization",
-        Type = Microsoft.OpenApi.Models.SecuritySchemeType.Http,
-        Scheme = "Bearer",
-        BearerFormat = "JWT",
-        In = Microsoft.OpenApi.Models.ParameterLocation.Header,
-        Description = "Enter your JWT token"
-    });
-    options.AddSecurityRequirement(new Microsoft.OpenApi.Models.OpenApiSecurityRequirement
-    {
-        {
-            new Microsoft.OpenApi.Models.OpenApiSecurityScheme
-            {
-                Reference = new Microsoft.OpenApi.Models.OpenApiReference
-                {
-                    Type = Microsoft.OpenApi.Models.ReferenceType.SecurityScheme,
-                    Id = "Bearer"
-                }
-            },
-            Array.Empty<string>()
-        }
-    });
 });
 
-builder.Services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme)
-    .AddJwtBearer(options =>
-    {
-        options.TokenValidationParameters = new TokenValidationParameters
-        {
-            ValidateIssuer = true,
-            ValidateAudience = true,
-            ValidateLifetime = true,
-            ValidateIssuerSigningKey = true,
-            ValidIssuer = builder.Configuration["Jwt:Issuer"],
-            ValidAudience = builder.Configuration["Jwt:Audience"],
-            IssuerSigningKey = new SymmetricSecurityKey(
-                Encoding.UTF8.GetBytes(builder.Configuration["Jwt:Key"]!))
-        };
-    });
+builder.Services.AddAuthentication();
 builder.Services.AddAuthorization();
 
@@ -77,51 +20,4 @@
 var app = builder.Build();
 
-app.UseExceptionHandler(err => err.Run(async ctx =>
-{
-    var ex = ctx.Features.Get<Microsoft.AspNetCore.Diagnostics.IExceptionHandlerFeature>()?.Error;
-    ctx.Response.ContentType = "application/json";
-
-    var logger = ctx.RequestServices.GetRequiredService<ILogger<Program>>();
-
-    string message;
-    int status;
-
-    if (ex is UnauthorizedAccessException)
-    {
-        status = 401;
-        message = ex.Message;
-    }
-    else if (ex is InvalidOperationException)
-    {
-        status = 400;
-        message = ex.Message;
-    }
-    else if (ex is Microsoft.EntityFrameworkCore.DbUpdateException dbEx)
-    {
-        status = 400;
-        var inner = dbEx.InnerException?.Message ?? "";
-        if (inner.Contains("email_format"))
-            message = "Invalid email format.";
-        else if (inner.Contains("unique") || inner.Contains("duplicate") || inner.Contains("23505"))
-            message = "A user with this email or username already exists.";
-        else
-        {
-            logger.LogError(dbEx, "Unhandled database error");
-            message = "A database error occurred. Please try again.";
-        }
-    }
-    else
-    {
-        logger.LogError(ex, "Unhandled exception");
-        status = 500;
-        message = "An unexpected error occurred.";
-    }
-
-    ctx.Response.StatusCode = status;
-    await ctx.Response.WriteAsJsonAsync(new { message });
-}));
-
-app.UseCors("Frontend");
-
 if (app.Environment.IsDevelopment())
 {
@@ -130,4 +26,5 @@
 }
 
+app.UseHttpsRedirection();
 app.UseAuthentication();
 app.UseAuthorization();
Index: ChapterX.API/appsettings.Development.json.example
===================================================================
--- ChapterX.API/appsettings.Development.json.example	(revision a6e33d1f34c0dbbfff38bfb2c73eea32abfe7cff)
+++ 	(revision )
@@ -1,16 +1,0 @@
-{
-  "ConnectionStrings": {
-    "Database": "Host=localhost;Port=5432;Database=your_db;User Id=your_user;Password=your_password;SSL Mode=Disable"
-  },
-  "Jwt": {
-    "Key": "your-secret-key-at-least-32-characters-long!!",
-    "Issuer": "ChapterX",
-    "Audience": "ChapterX"
-  },
-  "Logging": {
-    "LogLevel": {
-      "Default": "Information",
-      "Microsoft.AspNetCore": "Warning"
-    }
-  }
-}
Index: ChapterX.API/appsettings.json
===================================================================
--- ChapterX.API/appsettings.json	(revision a6e33d1f34c0dbbfff38bfb2c73eea32abfe7cff)
+++ ChapterX.API/appsettings.json	(revision 877c13c3dd0934c1d31da7988d0d2c2c5925ed55)
@@ -6,17 +6,4 @@
     }
   },
-  "AllowedHosts": "*",
-  "Jwt": {
-    "Key": "",
-    "Issuer": "ChapterX",
-    "Audience": "ChapterX"
-  },
-  "ConnectionPool": {
-    "MinPoolSize": 1,
-    "MaxPoolSize": 20,
-    "ConnectionIdleLifetime": 300,
-    "ConnectionPruningInterval": 10,
-    "CommandTimeout": 30,
-    "Timeout": 15
-  }
+  "AllowedHosts": "*"
 }
