Найти тему
HumanBuilding

Веб-приложение для общественного пользования бумажными книгами с адресной передачей от одного пользователя другому

Бумажные книги - одна из основных разновидностей материальных носителей, посредством которых осуществляется передача огромной доли HB-богатств как от современника к современнику, так и от старших поколений к младшим.

Для этой передачи книги должны находиться в обращении. Но в действительности значительное количество книг после приобретения для домашних библиотек прочитывается один-два раза, а затем много лет пылится на полках, в кладовках и на чердаках.

Другим бумажным книгам везет несколько больше. Их размещают в общественных библиотеках, перепродают, оставляют в пунктах буккроссинга или дарят кому-то лично. Каждый из распространенных сегодня способов усиления обращения книг имеет свои серьезные недостатки.

Работа общественных библиотек требует значительного финансирования (содержание больших специальных помещений, оплата труда сотрудников, и так далее). Старые книги периодически списывают и отправляют на переработку, часто невзирая на их культурную ценность и достаточно хорошее состояние.

Когда в Интернете публикуют объявления о продаже книг из личных библиотек, часть пользователей не решается на покупку из-за цены, которая бывает незначительно ниже цены новой книги.

В процессе буккроссинга книги выкладываются в специализированных пунктах, координаты которых публикуются в Интернете. При этом в каждом среднем по размерам городе обычно есть несколько таких пунктов, откуда каждый желающий может забрать нужную книгу. Но общее количество разных книг в пунктах одного города невелико, поэтому таким путем очень редко получается достать именно то, что нужно в данный момент.

Есть в Интернет и службы дарения, возможности которых распространяются, кроме прочего, и на бумажные книги. В отличие от древних форм дарения, современные предполагают безвозмездную передачу вещей и услуг разного рода, а не однотипных. Но, как и в древности, с теми, кто периодически получает дары, но сам предоставляет в дар другим очень мало или ничего, отношения дарения разрывают. На таких принципах основана работа веб-приложения Дару-Дар. За несколько лет работы службы было подарено более двух миллионов самых разнообразных даров. Но в масштабах всей планеты это очень немного, и среди даров книги составляют лишь некоторую долю. Кроме того, бывают ситуации, что для дарения другим у кого-то длительное время не находится подходящих вещей и нет времени для оказания услуг в дар, а какая-то книга очень нужна.

-2

В 2020 - 2021 гг. нами велась разработка веб-приложения, призванного наладить максимально свободное общественное пользование книгами из домашних библиотеки, избегая при этом недостатков всех перечисленных выше способов. Было решено 204 достичь этого путем абсолютно безвозмездной и вообще безусловной адресной передачи книг от одного пользователя к другому на время или вообще без возврата.

Основные требования к web-приложению общественного пользования книгами:

- названия разделов: главная, поиск, мои книги, о нас;

- названия пунктов главного меню - по названиям разделов, плюс пиктограммы переключателя локалей, а также - меню входа под учетной записью пользователя Google и выхода;

- общие элементы разметки: верхняя панель с логотипом и навигационным меню, подвал с контактными данными и ссылками на соцсети;

- главная: о назначении сайта крупным шрифтом, две крупные кнопки, ведущие на разделы "поиск книги" и "мои предложения", место для видео-инструкций к каждому из двух разделов;

- поиск книги: область для отображения карточек книг, выставленных для передачи новому пользователю без возврата - "отдам" или для временной передачи (как в библиотеке) - "дам почитать", строка поиска по части названия книги / по автору, пиктограмма для открытия боковой панели с настройками фильтра и сортировки (фильтры - по стране и городу текущего пользователя книги, по ее автору, жанру, году издания, издателю; сортировка - по имени автора, по заголовку). На карточке есть кнопка отправки запроса, при клике по которой происходит отправка письма текущему пользователю книги и добавление строки в его список входящих запросов. При помощи списка полученных запросов пользователь книги может переносить сведения о ней в учетную запись другого пользователя после того, как договорился с ним о передаче книги. После этого описание книги исчезает из списка в разделе “мои книги” у прежнего ее пользователя и появляется у нового;

- мои книги: форма для ввода данных (обязательные - название книги, имя автора, категория, временная передача / отдача / личная, страна, город, необязательные - изображение, дата издания, издатель, жанр, описание/примечания), список ранее добавленных книг данного пользователя, на карточках книг - кнопки "редактировать" / "удалить". Категория “личная” предназначена для описаний тех книг, которыми человек в настоящий момент пользуется сам. Эти описания не будут видны другим пользователям при поиске. Таким образом, веб-приложение можно использовать и как каталогизатор домашней библиотеки;

- запросы: список запросов на получение книги от других пользователей веб-приложения;

- о нас - описание назначения и особенностей веб-приложения, форма для обратной связи (тема, почта, содержание, кнопка отправки), а также контактные данные: телефон, электронная почта, соцсети.

Веб-приложение реализовывалось в виде двух связанных между собой составляющих, развертываемых на разных хостингах:

- база данных под управлением СУБД MySql и реализация REST API на языке PHP: https://github.com/YuriiTrofimenko/books-2020-api.git

- веб-фронтенд на языке с использованием Vue 3, загружающийся в браузер пользователя из облака Firebase: https://github.com/YuriiTrofimenko/books-2020.git

В базу данных было внесено множество описаний наших личных книг, которые впоследствии погибли в пожаре весной 2022 года. Сгорел практически весь город, и вместе с ним - почти все городские и личные библиотеки бумажных книг.

Накануне этих событий нами была осуществлена первая передача книги новому пользователю, что стало возможным благодаря частичному дублированию возможностей будущего веб-приложения в группе ВКонтакте под названием Common Books / Общие книги.

-3

Также была совершена безуспешная попытка передать управление проектом другим заинтересованным лицам, у которых была бы возможность продолжить работу. Для этого в приложении ВКонтакте под названием Projects Bazaar было опубликовано следующее описание:

Common Books - сайт общественного пользования книгами домашних библиотек.

Дома есть книги, которые понадобятся нескоро или вообще больше не нужны?

Бывает так, что нужной книги нет под рукой, и приходится искать, где ее достать?

Наш проект предлагает пользоваться книгами совместно, как в одной семье.

Создайте электронный каталог домашней библиотеки, чтобы всегда точно знать, какие книги у Вас есть.

Описание каждой книги может быть:

а) скрыто от других пользователей с пометкой ЛИЧНАЯ, если книга сейчас нужна текущему пользователю;

б) открыто для всех с пометкой ДАМ ПОЧИТАТЬ, если текущий пользователь готов передать книгу на время, но ему самому, скорее всего, эта книга еще понадобится в будущем;

в) открыто для всех с пометкой ОТДАМ, если текущий пользователь готов передать книгу, и ему самому эта книга не понадобится в обозримом будущем.

После передачи книги из рук в руки или почтой предыдущий пользователь книги передает новому и ее описание.

В результате:

- дом не захламлен ненужными книгами;

- можно бесплатно пользоваться книгами, которые временно или постоянно кому-то больше не нужны;

- можно знакомиться с новыми людьми при передаче книг.

Текущее состояние проекта: очень сырой прототип сайта.

Стек технологий: - BackEnd: PHP + MySQL; 206 - FrontEnd: TypeScript, Vue3 + FireBase.

В базу сайта загружены две-три сотни описаний моих книг, еще примерно столько же рассчитываю загрузить до конца года.

Сайт требует серьезной доработки и отладки. Если заинтересовались проектом, могу дать ссылку на репозиторий с исходниками. Пишите в ЛС.

Ссылка для отклика на вакансию нового руководителя проекта:

https://vk.com/bazaar#join_v0fe0bcae1d7235aefbb5cac27ceb4172_624

-4

В связи с прекращением полноценной работы Google Cloud, о чём уже упоминалось в предыдущих статьях данной серии, часть программной системы, которая обеспечивалась Google FireBase, требует реализации с нуля на другой платформе.

Любой желающий может связаться с нами и получить дополнительные сведения и доступы для возобновления работы над проектом или ответвиться от основного репозитория и развивать собственный независимый вариант. Также можно пользоваться соответствующей группой ВКонтакте, хотя со специальным веб-приложением было бы гораздо удобнее.