{"id":26730322,"url":"https://github.com/cyberscoper/librarymanagementsystem","last_synced_at":"2026-04-10T06:33:56.741Z","repository":{"id":267275164,"uuid":"900745153","full_name":"CyberScoper/LibraryManagementSystem","owner":"CyberScoper","description":"🔥 A web-based application designed to efficiently manage library operations. Features include user authentication with role-based access (Admin, Librarian, Member), comprehensive management of books, authors, categories, and loan processes. Built with Java, Spring Boot, Spring Security, PostgreSQL, and Docker, ensuring scalability and security.","archived":false,"fork":false,"pushed_at":"2024-12-10T09:24:59.000Z","size":163,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-26T14:46:41.598Z","etag":null,"topics":["bootstrap","css3","docker-compose","html","intellij-idea","java","javascript","jquery","postgresql","spring-boot","stu"],"latest_commit_sha":null,"homepage":"http://158.101.219.58:8080/","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/CyberScoper.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-12-09T11:51:39.000Z","updated_at":"2024-12-10T09:25:03.000Z","dependencies_parsed_at":null,"dependency_job_id":"99acb2af-e1d9-4a6e-bb75-572436a079d0","html_url":"https://github.com/CyberScoper/LibraryManagementSystem","commit_stats":null,"previous_names":["cyberscopetoday/librarymanagementsystem","cyberscoper/librarymanagementsystem"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CyberScoper%2FLibraryManagementSystem","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CyberScoper%2FLibraryManagementSystem/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CyberScoper%2FLibraryManagementSystem/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CyberScoper%2FLibraryManagementSystem/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/CyberScoper","download_url":"https://codeload.github.com/CyberScoper/LibraryManagementSystem/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245938343,"owners_count":20697025,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bootstrap","css3","docker-compose","html","intellij-idea","java","javascript","jquery","postgresql","spring-boot","stu"],"created_at":"2025-03-27T23:19:22.721Z","updated_at":"2025-12-30T19:59:18.700Z","avatar_url":"https://github.com/CyberScoper.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 📚 Library Management System for STU\n[![CodeFactor](https://www.codefactor.io/repository/github/cyberscopetoday/librarymanagementsystem/badge)](https://www.codefactor.io/repository/github/cyberscopetoday/librarymanagementsystem)\n\n‼️ [🇺🇸 English Version](./README_EN.md) ‼️\n‼️ [🇸🇰 Slovak Version](./README_SK.md) ‼️\n\n### 🛠️🧪 Тестовая Среда\n\nДля простого тестирования и демонстрации доступны следующие среды:\n\n- **Локальная Инстанция Приложения:**\n  - [http://158.101.219.58:8080/?continue](http://158.101.219.58:8080/?continue)\n  - Эта среда позволяет интерактивно тестировать функции приложения непосредственно через веб-браузер.\n  - **Дефолтные учетные данные:**\n    - **Email:** `tester@tester.com`\n    - **Пароль:** `password`\n\n- **Live Demo Приложения:**\n  - [https://murzin.tech/?continue](https://murzin.tech/?continue)\n  - Доступ к полностью функциональной версии системы управления библиотекой, где вы можете попробовать все доступные функции и проверить их правильную реализацию.\n  - **Дефолтные учетные данные:**\n    - **Email:** `tester@tester.com`\n    - **Пароль:** `password`\n\n\n\u003cimg src=\"https://github.com/user-attachments/assets/261cea60-5a6c-463c-897b-d8ceb27cd499\" width=\"60%\" alt=\"Обзор системы управления библиотекой\"\u003e\n\n## 📑 Table of Contents\n- [📖 Общая информация](#📖-общая-информация)\n- [✨ Возможности](#✨-возможности)\n- [🛠️ Технологии](#🛠️-технологии)\n- [📊 Модель базы данных](#📊-модель-базы-данных)\n- [🚀 Начало работы](#🚀-начало-работы)\n  - [🔧 Требования](#🔧-требования)\n  - [⚙️ Запуск приложения](#⚙️-запуск-приложения)\n  - [📦 Сборка пакетов](#📦-сборка-пакетов)\n  - [🗄️ Управление базой данных](#🗄️-управление-базой-данных)\n  - [✉️ Тестирование отправки почты](#✉️-тестирование-отправки-почты)\n- [👥 Кредиты](#👥-кредиты)\n\n## 📖 Общая информация\n\nLibrary Management System — это веб-приложение для управления библиотекой. Оно позволяет просматривать каталог библиотеки и выполнять действия с библиотечными материалами и пользователями. 📚👥\n\n**Проект создан в рамках учебного семинара:**\n- **Курс:** IKT - Программирование на Java\n\n## ✨ Возможности\n\n### 👤 Управление пользователями\n**Роли (основа для авторизации):**\n- **Администратор**\n- **Библиотекарь**\n- **Читатель**\n\n**Доступные операции:**\n- 🆕 Создание пользователя (добавление нового пользователя)\n- ✏️ Редактирование и обновление данных пользователя\n- 🗑️ Удаление пользователя\n- 🔐 Аутентификация (вход/выход)\n- 👀 Показать всех пользователей (с поиском, фильтрацией, сортировкой и пагинацией)\n- 📄 Показать детали пользователя для конкретного пользователя\n- 🧑‍💼 Показать детали текущего пользователя (Мои данные)\n\n### 📚 Управление библиотечными материалами/ресурсами и каталогом\n\n#### 🖋️ Авторы\n**Доступные операции:**\n\n| Операция                             | Изображение                                                                                              |\n|--------------------------------------|----------------------------------------------------------------------------------------------------------|\n| ➕ Добавить нового автора             | \u003cimg src=\"https://github.com/user-attachments/assets/08a97a4d-5300-40d2-9280-aeb256827765\" width=\"50%\" alt=\"Добавить автора\"\u003e |\n| ✏️ Редактировать и обновлять автора  | \u003cimg src=\"https://github.com/user-attachments/assets/bfad4634-d17a-4fa9-a37d-c382e393a464\" width=\"50%\" alt=\"Редактировать автора\"\u003e |\n| 🗑️ Удалить автора                    | \u003cimg src=\"https://github.com/user-attachments/assets/6d9a1fd4-c72d-45bb-bd67-c8ceee88a3ac\" width=\"50%\" alt=\"Удалить автора\"\u003e |\n| 👀 Просмотреть всех авторов           | \u003cimg src=\"https://github.com/user-attachments/assets/c4f8dd5f-1592-4392-a6c9-523628dcf08c\" width=\"50%\" alt=\"Просмотреть авторов\"\u003e |\n\n#### 🗂️ Категории\n**Доступные операции:**\n\n| Операция                                | Изображение                                                                                              |\n|-----------------------------------------|----------------------------------------------------------------------------------------------------------|\n| ➕ Добавить новую категорию               | \u003cimg src=\"https://github.com/user-attachments/assets/246accd2-1673-4287-9f16-e80530f5a025\" width=\"50%\" alt=\"Добавить категорию\"\u003e |\n| ✏️ Редактировать и обновлять категорию  | \u003cimg src=\"https://github.com/user-attachments/assets/c19e047e-29ac-4fd7-b474-ab6421277034\" width=\"50%\" alt=\"Редактировать категорию\"\u003e |\n| 🗑️ Удалить категорию                     | \u003cimg src=\"https://github.com/user-attachments/assets/d241ba90-394b-4713-81d7-648d72547f4c\" width=\"50%\" alt=\"Удалить категорию\"\u003e |\n| 👀 Просмотреть все категории             | \u003cimg src=\"https://github.com/user-attachments/assets/0c7a694c-b0f7-469f-b9ee-7fadc1bf1f7f\" width=\"50%\" alt=\"Просмотреть категории\"\u003e |\n\n#### 📖 Работы\n**Доступные операции:**\n\n| Операция                             | Изображение                                                                                              |\n|--------------------------------------|----------------------------------------------------------------------------------------------------------|\n| ➕ Добавить новую работу               | \u003cimg src=\"https://github.com/user-attachments/assets/a059b3e2-ab33-477c-8ed3-0a80eb4ace5c\" width=\"50%\" alt=\"Добавить работу\"\u003e |\n| ✏️ Редактировать и обновлять работу  | \u003cimg src=\"https://github.com/user-attachments/assets/f69d3439-13fe-472c-8d29-d0747d149c5d\" width=\"50%\" alt=\"Редактировать работу\"\u003e |\n| 🗑️ Удалить работу                    | \u003cimg src=\"https://github.com/user-attachments/assets/c0d99208-365c-400f-8a48-6a5810f6c3cb\" width=\"50%\" alt=\"Удалить работу\"\u003e |\n| 👀 Просмотреть все работы             | \u003cimg src=\"https://github.com/user-attachments/assets/c6efb7a2-2cc3-4b9e-b267-246b637e0c8d\" width=\"50%\" alt=\"Просмотреть работы\"\u003e |\n| 📦 Просмотреть все копии книг конкретной работы | \u003cimg src=\"https://github.com/user-attachments/assets/bbeb797f-e026-4d05-9b57-3e70fd2757c7\" width=\"50%\" alt=\"Просмотреть копии книг\"\u003e |\n\n#### 📕 Книги\n**Доступные операции:**\n\n| Операция                              | Изображение                                                                                              |\n|---------------------------------------|----------------------------------------------------------------------------------------------------------|\n| ➕ Добавить новую книгу                 | \u003cimg src=\"https://github.com/user-attachments/assets/17322869-09a7-41d0-a258-6fdf34b7403d\" width=\"30%\" alt=\"Добавить книгу\"\u003e |\n| ✏️ Редактировать и обновлять книгу    | \u003cimg src=\"https://github.com/user-attachments/assets/af9adfe8-cc7a-4258-9133-9554bb52902c\" width=\"30%\" alt=\"Редактировать книгу\"\u003e |\n| 🗑️ Удалить книгу                      | \u003cimg src=\"https://github.com/user-attachments/assets/b7374475-4a5a-4a68-949a-c071334d5706\" width=\"30%\" alt=\"Удалить книгу\"\u003e |\n| 👀 Просмотреть все книги               | \u003cimg src=\"https://github.com/user-attachments/assets/9b939fe6-fa45-40cd-9d65-ef26fdac0686\" width=\"30%\" alt=\"Просмотреть книги\"\u003e |\n\n### 🔄 Заимствование ресурсов - Займы\n\n| Операция                                 | Изображение                                                                                              |\n|------------------------------------------|----------------------------------------------------------------------------------------------------------|\n| 🆙 Начать займ                            | \u003cimg src=\"https://github.com/user-attachments/assets/7dcf260e-c53b-441f-958b-8485e316d49b\" width=\"50%\" alt=\"Начать займ\"\u003e |\n| 🏁 Завершить займ                         | \u003cimg src=\"https://github.com/user-attachments/assets/002f69e4-ced9-46d8-ba1a-16a87a1ab270\" width=\"50%\" alt=\"Завершить займ\"\u003e |\n| 📚 Просмотреть все займы конкретной книги  | \u003cimg src=\"https://github.com/user-attachments/assets/e86e8e6c-74e5-4807-ac9e-564cc8fa4ea2\" width=\"50%\" alt=\"Просмотреть займы конкретной книги\"\u003e |\n| 👥 Просмотреть займы по читателю          | \u003cimg src=\"https://github.com/user-attachments/assets/8af57a67-3454-4e5b-94b3-94381af66e28\" width=\"50%\" alt=\"Просмотреть займы по читателю\"\u003e |\n\n### 📧 Отправка почтовых уведомлений\n- 📩 Отправить письмо \"Добро пожаловать\" пользователю при создании его аккаунта\n- 📬 Отправить письмо \"Займ начат\" читателю при заимствовании книги\n- 📥 Отправить письмо \"Займ завершен\" читателю при возврате книги\n\n## 🛠️ Технологии\n\n- **Backend:** Java, Spring Boot, Spring Security\n- **Frontend:** Thymeleaf, Bootstrap, HTML5, CSS3, JavaScript, jQuery\n- **База данных:** Flyway, PostgreSQL\n- **Контейнеризация:** Docker\n- **IDE:** IntelliJ IDEA\n\n## 📊 Модель базы данных\n\n![Модель базы данных](https://github.com/user-attachments/assets/9ed7b02b-569b-4765-95c3-d8f83b00bfbe)\n\nБаза данных для Library Management System состоит из следующих таблиц и связей между ними:\n\n### **Таблицы и их поля**\n\n1. ### 🗂️ **category**\n   | Поле                | Тип           | Описание                                 |\n   |---------------------|---------------|------------------------------------------|\n   | `id`                | integer (PK)  | Уникальный идентификатор категории       |\n   | `name`              | varchar       | Название категории                       |\n\n2. ### 🖋️ **work**\n   | Поле           | Тип           | Описание                                 |\n   |----------------|---------------|------------------------------------------|\n   | `id`           | integer (PK)  | Уникальный идентификатор работы          |\n   | `title`        | varchar       | Название работы                          |\n   | `description`  | varchar       | Описание работы                          |\n\n3. ### 👤 **author**\n   | Поле          | Тип           | Описание                                 |\n   |---------------|---------------|------------------------------------------|\n   | `id`          | integer (PK)  | Уникальный идентификатор автора          |\n   | `first_name`  | varchar       | Имя автора                               |\n   | `last_name`   | varchar       | Фамилия автора                           |\n\n4. ### 📚 **book**\n   | Поле                  | Тип           | Описание                                  |\n   |-----------------------|---------------|-------------------------------------------|\n   | `id`                  | integer (PK)  | Уникальный идентификатор книги            |\n   | `work_id`             | integer (FK)  | Ссылка на работу                          |\n   | `publisher_name`      | varchar       | Название издателя                         |\n   | `year_of_publishing`  | timestamp     | Год издания                               |\n   | `isbn`                | varchar       | ISBN книги                                |\n   | `book_status`         | status        | Статус книги                              |\n   | `available`           | boolean       | Доступность книги                         |\n\n5. ### 👥 **user**\n   | Поле              | Тип           | Описание                                  |\n   |-------------------|---------------|-------------------------------------------|\n   | `id`              | integer (PK)  | Уникальный идентификатор пользователя     |\n   | `first_name`      | varchar       | Имя пользователя                          |\n   | `last_name`       | varchar       | Фамилия пользователя                      |\n   | `password`        | varchar       | Пароль пользователя                       |\n   | `email`           | varchar       | Email пользователя                        |\n   | `date_of_birth`   | timestamp     | Дата рождения                             |\n   | `contact_number`  | varchar       | Контактный номер                          |\n   | `enabled`         | boolean       | Статус активации                          |\n\n6. ### 📝 **loan**\n   | Поле             | Тип           | Описание                                  |\n   |------------------|---------------|-------------------------------------------|\n   | `id`             | integer (PK)  | Уникальный идентификатор займа            |\n   | `member_id`      | integer (FK)  | Ссылка на читателя                        |\n   | `librarian_id`   | integer (FK)  | Ссылка на библиотекаря                    |\n   | `book_id`        | integer (FK)  | Ссылка на книгу                           |\n   | `date_issued`    | timestamp     | Дата выдачи                               |\n   | `date_returned`  | timestamp     | Дата возврата                             |\n\n7. ### 🔐 **role**\n   | Поле       | Тип           | Описание                                   |\n   |------------|---------------|--------------------------------------------|\n   | `id`       | integer (PK)  | Уникальный идентификатор роли              |\n   | `name`     | varchar       | Название роли (Admin, Librarian, Member)   |\n\n8. ### 🔗 **user_role**\n   | Поле       | Тип           | Описание                                  |\n   |------------|---------------|-------------------------------------------|\n   | `user_id`  | integer (FK)  | Ссылка на пользователя                    |\n   | `role_id`  | integer (FK)  | Ссылка на роль                            |\n\n9. ### 🔗 **work_author**\n   | Поле        | Тип           | Описание                                 |\n   |-------------|---------------|------------------------------------------|\n   | `work_id`   | integer (FK)  | Ссылка на работу                          |\n   | `author_id` | integer (FK)  | Ссылка на автора                          |\n\n10. ### 🔗 **work_category**\n    | Поле           | Тип           | Описание                                 |\n    |----------------|---------------|------------------------------------------|\n    | `work_id`      | integer (FK)  | Ссылка на работу                          |\n    | `category_id`  | integer (FK)  | Ссылка на категорию                       |\n\n---\n\n### 🔗 **Связи между таблицами**\n\n1. **work_author**:  \n   - `work_id` ↔️ `work.id`  \n   - `author_id` ↔️ `author.id`  \n\n2. **work_category**:  \n   - `work_id` ↔️ `work.id`  \n   - `category_id` ↔️ `category.id`  \n\n3. **book**:  \n   - `work_id` ↔️ `work.id`  \n\n4. **loan**:  \n   - `member_id` ↔️ `user.id` (читатель)  \n   - `librarian_id` ↔️ `user.id` (библиотекарь)  \n   - `book_id` ↔️ `book.id`  \n\n5. **user_role**:  \n   - `user_id` ↔️ `user.id`  \n   - `role_id` ↔️ `role.id`  \n\n---\n\n### 📝 **Ключевые моменты**\n\n- **Первичные ключи (PK)** гарантируют уникальность записей в каждой таблице.\n- **Внешние ключи (FK)** обеспечивают связи между таблицами и поддерживают целостность данных.\n- **Роли и пользователи** связаны через промежуточную таблицу `user_role` для реализации авторизации.\n- **Займы (loan)** связывают книги, читателей и библиотекарей, отслеживая выдачу и возврат книг.\n- **Книги (book)** связаны с работами (work) и могут иметь несколько категорий и авторов через таблицы `work_category` и `work_author`.\n\n## 🚀 Начало работы\n\n### 🔧 Требования\nВам необходимо установить следующее:\n- **Docker** вместе с **docker-compose**\n- **Java Development Kit (JDK)**\n- **Maven** (если не используется предоставленный Maven Wrapper)\n\n### ⚙️ Запуск приложения\nВыполните следующие команды в терминале:\n\n1. **Перейдите в папку проекта (выполняется из корневой директории репозитория):**\n    ```bash\n    cd library-management-system/\n    ```\n    ![Перейти в папку проекта](https://github.com/user-attachments/assets/37016f78-70c8-47ed-8381-e0ee26ef1ff2)\n\n2. **Соберите `.jar` файл проекта в папке `target`:**\n    ```bash\n    ./mvnw clean package -DskipTests\n    ```\n    ![Сборка проекта Maven](https://github.com/user-attachments/assets/f3351b46-dfec-4263-b456-2753d52c0cda)\n\n3. **Соберите и запустите Docker-окружение и локальный веб-сервер:**\n    ```bash\n    docker-compose up\n    ```\n    *(Остановить можно с помощью `Ctrl+C`)*\n    ![Запуск Docker Compose](https://github.com/user-attachments/assets/76c166a1-167c-4154-bb0d-7f50920e655f)\n\n4. **Откройте приложение в браузере:**\n    [http://localhost:8080/](http://localhost:8080/)\n\n**Если вам нужно изменить код и применить изменения:**\n\n1. **Остановите и удалите Docker-контейнеры и их тома:**\n    ```bash\n    docker-compose down\n    ```\n    ![Остановка Docker Compose](https://github.com/user-attachments/assets/c6d0bdb3-7051-409a-8b25-0168b09858e3)\n\n2. **Удалите Docker-образ `library-management-system.jar`:**\n    ```bash\n    docker rmi library-management-system.jar\n    ```\n    ![Удаление Docker образа](https://github.com/user-attachments/assets/75961e05-d158-4a25-9c96-d4726f2b0f9c)\n\n3. **Повторите шаги 2-4.**\n\n### 📦 Сборка пакетов\n\nВы можете создать установочные пакеты `.deb` и `.rpm` с помощью `jpackage`. Для этого выполните следующие шаги:\n\n#### 📥 Предварительные требования\n\n- **Для сборки `.deb` пакета:**\n  - Установите `fakeroot`:\n    ```bash\n    sudo apt-get update\n    sudo apt-get install fakeroot\n    ```\n\n- **Для сборки `.rpm` пакета:**\n  - Установите `rpm-build`:\n    ```bash\n    sudo apt-get update\n    sudo apt-get install rpm\n    ```\n\n#### 🏗️ Сборка `.deb` пакета\nВыполните следующую команду из корневой директории проекта:\n```bash\njpackage --input target \\\n    --name LibraryManagementSystem \\\n    --main-jar library-management-system.jar \\\n    --type deb \\\n    --icon assets/images/icon.png \\\n    --dest out_dir\n```\n![Сборка .deb пакета](https://github.com/user-attachments/assets/f2bd103d-8791-4944-b36f-b85de15f9903)\n\n#### 🏗️ Сборка `.rpm` пакета\nВыполните следующую команду из корневой директории проекта:\n```bash\njpackage --input target \\\n    --name LibraryManagementSystem \\\n    --main-jar library-management-system.jar \\\n    --type rpm \\\n    --icon assets/images/icon.png \\\n    --dest out_dir\n```\n![Сборка .rpm пакета](https://github.com/user-attachments/assets/fc2f13eb-507d-43f8-8652-43214d64e8da)\n\n#### 🛠️ Дополнительные опции\n- `--app-version`: Указать версию приложения.\n- `--icon`: Добавить иконку приложения (например, `icon.png`).\n- `--dest`: Указать директорию для сохранения созданного пакета.\n\n**Пример с иконкой:**\n```bash\njpackage --input target \\\n    --name LibraryManagementSystem \\\n    --main-jar library-management-system.jar \\\n    --type deb \\\n    --icon assets/images/icon.png \\\n    --dest out_dir\n```\n\n**Примечания:**\n- Убедитесь, что у вас установлен JDK версии 14 или выше, включающий `jpackage`.\n- `jpackage` создает установочные пакеты под ту платформу, на которой он запущен. Для создания `.rpm` пакета рекомендуется использовать системы на базе RPM (например, Fedora или CentOS).\n\n### 🗄️ Управление базой данных\nВы можете просматривать базу данных PostgreSQL внутри окна базы данных IntelliJ IDEA следующим образом:\n\n1. **Перейдите в:** `View -\u003e Tool Windows -\u003e Database`\n2. **Добавьте новый источник данных:**\n    - Нажмите кнопку `+`\n    - Выберите `Data Source from URL` и введите следующие данные:\n\n    **URL:** `jdbc:postgresql:///postgres`  \n    **Driver:** `PostgreSQL`\n\n3. **Настройте свойства подключения:**\n    - **Username:** `postgres`\n    - **Password:** `postgres`\n    - **Database:** `postgres`\n    - **Host:** `localhost`\n    - **Port:** `5432`\n\n### ✉️ Тестирование отправки почты\n**MailHog Web UI**, инструмент для тестирования отправки электронной почты разработчиками, доступен по адресу: [http://localhost:8025/](http://localhost:8025/)\n![MailHog Web UI](https://github.com/user-attachments/assets/5438a75d-b280-4aac-94cb-839e52d39aed)\n\n## 👥 Кредиты\n\n**Руководитель проекта, Старший разработчик, Главный архитектор, Технический директор, Менеджер по кофе, Гуру базы данных, Инженер по тестированию, Специалист по деплоям, Дизайнер интерфейсов, Администратор серверов, Главный мотиватор, Ответственный за мемы, Оракул системы, Повелитель багов, Легенда кодинга, Исполнитель танцев с бубном, Чародей коммитов, Сейф-провайдер продакшна, Король консоли, Верховный повелитель логов, Локатор потерянных точек с запятой, Мастер слияний, Документатор хаоса, Ломатель продакшна (по пятницам), Специалист по \"работает на моей машине\", Властелин веток, Хранитель деплой-ключей, Собиратель стек-трейсов:**  \n- **Aleksandr Murzin** 😘\n\n---\n\n**Programming in Java**  \n**Faculty of Electrical Engineering and Information Technology of STU in Bratislava**\n\n---\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcyberscoper%2Flibrarymanagementsystem","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcyberscoper%2Flibrarymanagementsystem","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcyberscoper%2Flibrarymanagementsystem/lists"}