From dc6314384d5e7b25064c9381d427a5a58974c70b Mon Sep 17 00:00:00 2001 From: Pablo de la Torre Jamardo Date: Sat, 19 Jul 2025 20:28:32 +0200 Subject: [PATCH] Split project into backend and frontend modules --- backend/pom.xml | 72 +++++++++++++++++++ .../ia/chat/boot/IAChatBootApplication.java | 0 .../controller/ChatPageController.java | 0 .../controller/ChatRestController.java | 0 .../application/prompt/PromptBuilder.java | 0 .../application/prompt/PromptDefinition.java | 0 .../application/prompt/PromptTemplates.java | 0 .../session/ChatSessionManager.java | 0 .../usecase/ChatHistoryUseCase.java | 0 .../boot/application/usecase/ChatUseCase.java | 0 .../exception/BusinessLogicException.java | 0 .../chat/boot/domain/model/ChatIdentity.java | 0 .../chat/boot/domain/model/ChatMessage.java | 0 .../boot/domain/port/ChatMessageStore.java | 0 .../chat/boot/domain/service/ChatService.java | 0 .../infraestructure/llm/LlmModelClient.java | 0 .../infraestructure/llm/LlmModelLoader.java | 0 .../boot/persistence/ChatMessageEntity.java | 0 .../persistence/ChatMessageJpaRepository.java | 0 .../boot/persistence/ChatMessageMapper.java | 0 .../persistence/SqliteChatMessageStore.java | 0 .../src}/main/resources/application.yml | 0 .../resources/prompts/default_prompt.json | 0 .../src}/main/resources/static/css/styles.css | 0 .../src}/main/resources/static/js/main.js | 0 .../src}/main/resources/templates/chat.html | 0 .../chat/boot/IAChatBootApplicationTests.java | 0 frontend/pom.xml | 18 +++++ pom.xml | 65 +++-------------- 29 files changed, 99 insertions(+), 56 deletions(-) create mode 100644 backend/pom.xml rename {src => backend/src}/main/java/com/pablotj/ia/chat/boot/IAChatBootApplication.java (100%) rename {src => backend/src}/main/java/com/pablotj/ia/chat/boot/adapter/controller/ChatPageController.java (100%) rename {src => backend/src}/main/java/com/pablotj/ia/chat/boot/adapter/controller/ChatRestController.java (100%) rename {src => backend/src}/main/java/com/pablotj/ia/chat/boot/application/prompt/PromptBuilder.java (100%) rename {src => backend/src}/main/java/com/pablotj/ia/chat/boot/application/prompt/PromptDefinition.java (100%) rename {src => backend/src}/main/java/com/pablotj/ia/chat/boot/application/prompt/PromptTemplates.java (100%) rename {src => backend/src}/main/java/com/pablotj/ia/chat/boot/application/session/ChatSessionManager.java (100%) rename {src => backend/src}/main/java/com/pablotj/ia/chat/boot/application/usecase/ChatHistoryUseCase.java (100%) rename {src => backend/src}/main/java/com/pablotj/ia/chat/boot/application/usecase/ChatUseCase.java (100%) rename {src => backend/src}/main/java/com/pablotj/ia/chat/boot/domain/exception/BusinessLogicException.java (100%) rename {src => backend/src}/main/java/com/pablotj/ia/chat/boot/domain/model/ChatIdentity.java (100%) rename {src => backend/src}/main/java/com/pablotj/ia/chat/boot/domain/model/ChatMessage.java (100%) rename {src => backend/src}/main/java/com/pablotj/ia/chat/boot/domain/port/ChatMessageStore.java (100%) rename {src => backend/src}/main/java/com/pablotj/ia/chat/boot/domain/service/ChatService.java (100%) rename {src => backend/src}/main/java/com/pablotj/ia/chat/boot/infraestructure/llm/LlmModelClient.java (100%) rename {src => backend/src}/main/java/com/pablotj/ia/chat/boot/infraestructure/llm/LlmModelLoader.java (100%) rename {src => backend/src}/main/java/com/pablotj/ia/chat/boot/persistence/ChatMessageEntity.java (100%) rename {src => backend/src}/main/java/com/pablotj/ia/chat/boot/persistence/ChatMessageJpaRepository.java (100%) rename {src => backend/src}/main/java/com/pablotj/ia/chat/boot/persistence/ChatMessageMapper.java (100%) rename {src => backend/src}/main/java/com/pablotj/ia/chat/boot/persistence/SqliteChatMessageStore.java (100%) rename {src => backend/src}/main/resources/application.yml (100%) rename {src => backend/src}/main/resources/prompts/default_prompt.json (100%) rename {src => backend/src}/main/resources/static/css/styles.css (100%) rename {src => backend/src}/main/resources/static/js/main.js (100%) rename {src => backend/src}/main/resources/templates/chat.html (100%) rename {src => backend/src}/test/java/com/pablotj/ia/chat/boot/IAChatBootApplicationTests.java (100%) create mode 100644 frontend/pom.xml diff --git a/backend/pom.xml b/backend/pom.xml new file mode 100644 index 0000000..cb8a5ee --- /dev/null +++ b/backend/pom.xml @@ -0,0 +1,72 @@ + + 4.0.0 + + + com.pablotj + chat-ia-offline + 0.0.1-SNAPSHOT + + + backend + chat-ia-frontend + Backend Spring Boot + jar + + + + + + org.springframework.boot + spring-boot-starter-web + + + + + org.springframework.boot + spring-boot-starter-thymeleaf + + + + + de.kherud + llama + 4.2.0 + + + + + org.xerial + sqlite-jdbc + 3.45.1.0 + + + + org.hibernate.orm + hibernate-community-dialects + + + + org.springframework.boot + spring-boot-starter-data-jpa + + + + + org.springframework.boot + spring-boot-starter-test + test + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + \ No newline at end of file diff --git a/src/main/java/com/pablotj/ia/chat/boot/IAChatBootApplication.java b/backend/src/main/java/com/pablotj/ia/chat/boot/IAChatBootApplication.java similarity index 100% rename from src/main/java/com/pablotj/ia/chat/boot/IAChatBootApplication.java rename to backend/src/main/java/com/pablotj/ia/chat/boot/IAChatBootApplication.java diff --git a/src/main/java/com/pablotj/ia/chat/boot/adapter/controller/ChatPageController.java b/backend/src/main/java/com/pablotj/ia/chat/boot/adapter/controller/ChatPageController.java similarity index 100% rename from src/main/java/com/pablotj/ia/chat/boot/adapter/controller/ChatPageController.java rename to backend/src/main/java/com/pablotj/ia/chat/boot/adapter/controller/ChatPageController.java diff --git a/src/main/java/com/pablotj/ia/chat/boot/adapter/controller/ChatRestController.java b/backend/src/main/java/com/pablotj/ia/chat/boot/adapter/controller/ChatRestController.java similarity index 100% rename from src/main/java/com/pablotj/ia/chat/boot/adapter/controller/ChatRestController.java rename to backend/src/main/java/com/pablotj/ia/chat/boot/adapter/controller/ChatRestController.java diff --git a/src/main/java/com/pablotj/ia/chat/boot/application/prompt/PromptBuilder.java b/backend/src/main/java/com/pablotj/ia/chat/boot/application/prompt/PromptBuilder.java similarity index 100% rename from src/main/java/com/pablotj/ia/chat/boot/application/prompt/PromptBuilder.java rename to backend/src/main/java/com/pablotj/ia/chat/boot/application/prompt/PromptBuilder.java diff --git a/src/main/java/com/pablotj/ia/chat/boot/application/prompt/PromptDefinition.java b/backend/src/main/java/com/pablotj/ia/chat/boot/application/prompt/PromptDefinition.java similarity index 100% rename from src/main/java/com/pablotj/ia/chat/boot/application/prompt/PromptDefinition.java rename to backend/src/main/java/com/pablotj/ia/chat/boot/application/prompt/PromptDefinition.java diff --git a/src/main/java/com/pablotj/ia/chat/boot/application/prompt/PromptTemplates.java b/backend/src/main/java/com/pablotj/ia/chat/boot/application/prompt/PromptTemplates.java similarity index 100% rename from src/main/java/com/pablotj/ia/chat/boot/application/prompt/PromptTemplates.java rename to backend/src/main/java/com/pablotj/ia/chat/boot/application/prompt/PromptTemplates.java diff --git a/src/main/java/com/pablotj/ia/chat/boot/application/session/ChatSessionManager.java b/backend/src/main/java/com/pablotj/ia/chat/boot/application/session/ChatSessionManager.java similarity index 100% rename from src/main/java/com/pablotj/ia/chat/boot/application/session/ChatSessionManager.java rename to backend/src/main/java/com/pablotj/ia/chat/boot/application/session/ChatSessionManager.java diff --git a/src/main/java/com/pablotj/ia/chat/boot/application/usecase/ChatHistoryUseCase.java b/backend/src/main/java/com/pablotj/ia/chat/boot/application/usecase/ChatHistoryUseCase.java similarity index 100% rename from src/main/java/com/pablotj/ia/chat/boot/application/usecase/ChatHistoryUseCase.java rename to backend/src/main/java/com/pablotj/ia/chat/boot/application/usecase/ChatHistoryUseCase.java diff --git a/src/main/java/com/pablotj/ia/chat/boot/application/usecase/ChatUseCase.java b/backend/src/main/java/com/pablotj/ia/chat/boot/application/usecase/ChatUseCase.java similarity index 100% rename from src/main/java/com/pablotj/ia/chat/boot/application/usecase/ChatUseCase.java rename to backend/src/main/java/com/pablotj/ia/chat/boot/application/usecase/ChatUseCase.java diff --git a/src/main/java/com/pablotj/ia/chat/boot/domain/exception/BusinessLogicException.java b/backend/src/main/java/com/pablotj/ia/chat/boot/domain/exception/BusinessLogicException.java similarity index 100% rename from src/main/java/com/pablotj/ia/chat/boot/domain/exception/BusinessLogicException.java rename to backend/src/main/java/com/pablotj/ia/chat/boot/domain/exception/BusinessLogicException.java diff --git a/src/main/java/com/pablotj/ia/chat/boot/domain/model/ChatIdentity.java b/backend/src/main/java/com/pablotj/ia/chat/boot/domain/model/ChatIdentity.java similarity index 100% rename from src/main/java/com/pablotj/ia/chat/boot/domain/model/ChatIdentity.java rename to backend/src/main/java/com/pablotj/ia/chat/boot/domain/model/ChatIdentity.java diff --git a/src/main/java/com/pablotj/ia/chat/boot/domain/model/ChatMessage.java b/backend/src/main/java/com/pablotj/ia/chat/boot/domain/model/ChatMessage.java similarity index 100% rename from src/main/java/com/pablotj/ia/chat/boot/domain/model/ChatMessage.java rename to backend/src/main/java/com/pablotj/ia/chat/boot/domain/model/ChatMessage.java diff --git a/src/main/java/com/pablotj/ia/chat/boot/domain/port/ChatMessageStore.java b/backend/src/main/java/com/pablotj/ia/chat/boot/domain/port/ChatMessageStore.java similarity index 100% rename from src/main/java/com/pablotj/ia/chat/boot/domain/port/ChatMessageStore.java rename to backend/src/main/java/com/pablotj/ia/chat/boot/domain/port/ChatMessageStore.java diff --git a/src/main/java/com/pablotj/ia/chat/boot/domain/service/ChatService.java b/backend/src/main/java/com/pablotj/ia/chat/boot/domain/service/ChatService.java similarity index 100% rename from src/main/java/com/pablotj/ia/chat/boot/domain/service/ChatService.java rename to backend/src/main/java/com/pablotj/ia/chat/boot/domain/service/ChatService.java diff --git a/src/main/java/com/pablotj/ia/chat/boot/infraestructure/llm/LlmModelClient.java b/backend/src/main/java/com/pablotj/ia/chat/boot/infraestructure/llm/LlmModelClient.java similarity index 100% rename from src/main/java/com/pablotj/ia/chat/boot/infraestructure/llm/LlmModelClient.java rename to backend/src/main/java/com/pablotj/ia/chat/boot/infraestructure/llm/LlmModelClient.java diff --git a/src/main/java/com/pablotj/ia/chat/boot/infraestructure/llm/LlmModelLoader.java b/backend/src/main/java/com/pablotj/ia/chat/boot/infraestructure/llm/LlmModelLoader.java similarity index 100% rename from src/main/java/com/pablotj/ia/chat/boot/infraestructure/llm/LlmModelLoader.java rename to backend/src/main/java/com/pablotj/ia/chat/boot/infraestructure/llm/LlmModelLoader.java diff --git a/src/main/java/com/pablotj/ia/chat/boot/persistence/ChatMessageEntity.java b/backend/src/main/java/com/pablotj/ia/chat/boot/persistence/ChatMessageEntity.java similarity index 100% rename from src/main/java/com/pablotj/ia/chat/boot/persistence/ChatMessageEntity.java rename to backend/src/main/java/com/pablotj/ia/chat/boot/persistence/ChatMessageEntity.java diff --git a/src/main/java/com/pablotj/ia/chat/boot/persistence/ChatMessageJpaRepository.java b/backend/src/main/java/com/pablotj/ia/chat/boot/persistence/ChatMessageJpaRepository.java similarity index 100% rename from src/main/java/com/pablotj/ia/chat/boot/persistence/ChatMessageJpaRepository.java rename to backend/src/main/java/com/pablotj/ia/chat/boot/persistence/ChatMessageJpaRepository.java diff --git a/src/main/java/com/pablotj/ia/chat/boot/persistence/ChatMessageMapper.java b/backend/src/main/java/com/pablotj/ia/chat/boot/persistence/ChatMessageMapper.java similarity index 100% rename from src/main/java/com/pablotj/ia/chat/boot/persistence/ChatMessageMapper.java rename to backend/src/main/java/com/pablotj/ia/chat/boot/persistence/ChatMessageMapper.java diff --git a/src/main/java/com/pablotj/ia/chat/boot/persistence/SqliteChatMessageStore.java b/backend/src/main/java/com/pablotj/ia/chat/boot/persistence/SqliteChatMessageStore.java similarity index 100% rename from src/main/java/com/pablotj/ia/chat/boot/persistence/SqliteChatMessageStore.java rename to backend/src/main/java/com/pablotj/ia/chat/boot/persistence/SqliteChatMessageStore.java diff --git a/src/main/resources/application.yml b/backend/src/main/resources/application.yml similarity index 100% rename from src/main/resources/application.yml rename to backend/src/main/resources/application.yml diff --git a/src/main/resources/prompts/default_prompt.json b/backend/src/main/resources/prompts/default_prompt.json similarity index 100% rename from src/main/resources/prompts/default_prompt.json rename to backend/src/main/resources/prompts/default_prompt.json diff --git a/src/main/resources/static/css/styles.css b/backend/src/main/resources/static/css/styles.css similarity index 100% rename from src/main/resources/static/css/styles.css rename to backend/src/main/resources/static/css/styles.css diff --git a/src/main/resources/static/js/main.js b/backend/src/main/resources/static/js/main.js similarity index 100% rename from src/main/resources/static/js/main.js rename to backend/src/main/resources/static/js/main.js diff --git a/src/main/resources/templates/chat.html b/backend/src/main/resources/templates/chat.html similarity index 100% rename from src/main/resources/templates/chat.html rename to backend/src/main/resources/templates/chat.html diff --git a/src/test/java/com/pablotj/ia/chat/boot/IAChatBootApplicationTests.java b/backend/src/test/java/com/pablotj/ia/chat/boot/IAChatBootApplicationTests.java similarity index 100% rename from src/test/java/com/pablotj/ia/chat/boot/IAChatBootApplicationTests.java rename to backend/src/test/java/com/pablotj/ia/chat/boot/IAChatBootApplicationTests.java diff --git a/frontend/pom.xml b/frontend/pom.xml new file mode 100644 index 0000000..3def794 --- /dev/null +++ b/frontend/pom.xml @@ -0,0 +1,18 @@ + + 4.0.0 + + + com.pablotj + chat-ia-offline + 0.0.1-SNAPSHOT + + + frontend + chat-ia-frontend + Frontend Vue.js App + pom + + \ No newline at end of file diff --git a/pom.xml b/pom.xml index f7d655c..e1ff610 100644 --- a/pom.xml +++ b/pom.xml @@ -15,64 +15,17 @@ com.pablotj chat-ia-offline 0.0.1-SNAPSHOT - ia-chat-boot - Project IA chat boot + pom + + + backend + frontend + + + chat-ia-offline + Project IA Chat Offline 17 - - - - - org.springframework.boot - spring-boot-starter-web - - - - - org.springframework.boot - spring-boot-starter-thymeleaf - - - - - de.kherud - llama - 4.2.0 - - - - - org.xerial - sqlite-jdbc - 3.45.1.0 - - - - org.hibernate.orm - hibernate-community-dialects - - - - org.springframework.boot - spring-boot-starter-data-jpa - - - - - org.springframework.boot - spring-boot-starter-test - test - - - - - - - org.springframework.boot - spring-boot-maven-plugin - - -