Демо для отклика. Здесь — как будет устроен настоящий портал и сколько это стоит.

Оглавление проекта

Портал, который не ляжет на ста тысячах книг

На соседней вкладке — рабочий макет: каталог из 100 000 книг, поиск с опечатками и тегами, читалка с листанием и комментариями к абзацам, виджеты для чужих сайтов и загрузка рукописи из Word. Ниже — на чём я соберу настоящий портал, как он выдержит рост, сроки и оплата по этапам.

Платформа

Свой код, а не плагины

Author.Today и Rulate — это не WordPress. На ста тысячах книг и миллионах глав конструкторы упираются в базу и поиск, поэтому:

  • Next.js отдаёт страницы книг и глав готовыми — их видят Яндекс и Google, они открываются за доли секунды.
  • Django — API, кабинеты, модерация и админка из коробки.
  • PostgreSQL хранит книги, главы, полки и комментарии; Meilisearch ищет с опечатками.
  • Тексты глав лежат в хранилище S3 и раздаются через CDN.

А если взять готовый движок?

Готовые скрипты «как у Author.Today» за 20–40 тысяч существуют, но это чужой код без поддержки: поиск на LIKE по базе, читалка без телефона, переделка любой мелочи дороже, чем написать её. Для площадки, которая рассчитывает на 100 000 книг, я за свой код, который вы полностью получаете.

Из чего состоит портал

Нажмите на блок — расскажу, зачем он нужен.

Путь читателя

  1. Человек ищет в Яндексе «попаданец в магическую академию читать». Попадает сразу на страницу главы: она отрисована сервером, поисковик видит текст и разметку Book.

  2. Страница пришла, текст главы — из CDN рядом с читателем. Шрифт и тема те, что он выбрал в прошлый раз.

  3. Читает с телефона: листает свайпом, оставляет комментарий к абзацу, добавляет книгу на полку. Позиция чтения сохраняется каждые 15 секунд — на ноутбуке откроется там же.

  4. Автор выкладывает новую главу — читателю приходит уведомление на сайте и на почту, если он подписан.

Путь автора

  1. Перетаскивает рукопись .docx или .fb2 в кабинет — как во вкладке «Авторам» на демо.

  2. Файл разбирается в очереди: главы по заголовкам, курсив и сноски сохраняются, мусорное форматирование Word вычищается.

  3. Автор проверяет главы, одни главы оставляет черновиком, другим ставит дату публикации, выбирает жанр и теги.

  4. Глава выходит сама, подписчики получают уведомление, книга поднимается в ленте «Свежие главы».

Масштаб в цифрах

Сколько весят 100 000 книг

Средняя книга — около 300 000 знаков, итого ~30 млрд знаков и около 60 ГБ текста, в сжатом виде ~15 ГБ. Это помещается в обычное хранилище за несколько сотен рублей в месяц.

Поиск

Индекс названий, авторов, аннотаций и тегов на 100 000 книг занимает 1–2 ГБ памяти и отвечает за 30–60 мс. На демо тот же поиск работает прямо в браузере — время видно в строке результатов.

Сервер на старте

Один сервер 4 ядра и 8 ГБ, 3–6 тысяч ₽ в месяц, держит десятки тысяч читателей в день. Когда вырастет — поиск и база разносятся на отдельные машины без переписывания кода.

SEO с первого дня

Страницы книг и глав отрисованы сервером, карта сайта разбита на файлы по 50 000 адресов, разметка schema.org Book, канонические адреса, Яндекс Вебмастер.

Страницы и разделы

Этапы и сроки

ЭтапЧто получаетеСрокСтоимость
1. Схема и прототипСтруктура данных, роли, прототипы главной, книги, читалки и кабинета, дизайн в стиле этого демо под ваш логотип2 раб. дня8 000 ₽
2. Каталог и поискКниги, авторы, жанры, теги, фильтры, поиск с опечатками, страницы книг с SEO, тестовый адрес5 раб. дней18 000 ₽
3. Читалка и кабинетыЧиталка для телефона и компьютера, полки, позиция чтения, кабинет автора, загрузка .docx и .fb2, расписание глав5 раб. дней20 000 ₽
4. СообществоКомментарии к книгам и абзацам, ответы, лайки, подписки, уведомления, жалобы и модерация, виджеты4 раб. дня14 000 ₽
5. ЗапускСервер, CDN, бэкапы, нагрузочный тест на 100 000 книг, Метрика, Вебмастер, перенос на домен, инструкция3 раб. дня10 000 ₽
Итого19 раб. дней70 000 ₽

Платные книги и выплаты авторам

Подписка на книгу или покупка глав, ЮKassa, баланс автора, выплаты, чеки. +11 000 ₽, 4 дня.

Переводы, как на Rulate

Команды переводчиков, оригинал рядом с переводом, глоссарий имён, голосование за следующую главу. +13 000 ₽, 4 дня.

Оплата по этапам

Вы платите за этап, когда видите его на тестовом адресе. Не понравилось — останавливаемся, всё сделанное остаётся у вас.

8 000 ₽на старте
18 000 ₽после каталога и поиска
20 000 ₽после читалки и кабинетов
14 000 ₽после комментариев и модерации
10 000 ₽в день запуска

Код, база, сервер, домен и все доступы — ваши. Документация по развёртыванию. Первые 30 дней после запуска исправляю ошибки бесплатно.

Читалка и разбор Word/FB2 общие с вашим вторым заказом — книжным магазином. Поэтому портал и магазин вместе — 80 000 ₽: 70 000 за портал и 10 000 за магазин вместо 36 000. Магазин можно запустить первым, чтобы раньше пошли продажи.

Что нужно от вас

Вернуться к порталу