web_writer/README.md

6.6 KiB
Executable File
Raw Blame History

Web Writer

Лицензия: AGPLv3

Web Writer — веб-приложение для написания, хранения и публикации книг и серий книг. Поддерживает Markdown с расширением для диалогов, автосохранение текста, экспорт и управление пользователями.


🚀 Возможности

  • Книги и серии: создавайте серии и добавляйте книги с главами.

  • Сортировка книг и глав: сортируйте книги в сериях, и главы в книгах в том порядке в каком вам нравится.

  • Редактор книг:

    • WYSIWYG редактор Quill.js
    • Автосохранение текста
    • Автоматическое форматирование книжных диалогов.
  • Темы оформления: выберите в настройке тему которая вам больше по душе.

  • Предпросмотр книг:

    • Автор: видит все черновики и опубликованные главы.
    • Публичный доступ: только опубликованные главы по ссылке с shared_token.
  • Обложки и аватары: добавляйте изображения к книгам и профилям.

  • Экспорт: PDF, DOCX, HTML, TXT.

  • Интерактивное содержание в просмотре и экспорте книг

  • Администрирование пользователей:

    • Управление аккаунтами, активация/деактивация.
    • При удалении пользователя удаляются все его книги.
  • Публичные ссылки:

    • Делитесь книгой по shared_token. Хотите чтобы её никто больше не увидел? Перегенерируйте токен!
    • Давайте ссылку на свою страницу автора, где будет список опубликованных вами книг.

Скриншоты

  • Панель управления и смена темы Панель управления Смена темы Панель управления после смены темы

  • Редактор текста Редактор текста Quill

  • Управление главами книги Управление главами книги

  • Управление сериями книг Управление сериями книг

  • Просмотр книги Просмотр книги


⚙️ Требования

  • PHP: 8.0 и выше
  • MySQL с InnoDB и внешними ключами
  • PHP расширения: mbstring, json, PDO
  • Веб-сервер с правами на запись в папки config/ и uploads/

Composer не нужен. Все библиотеки уже включены в vendor/.


📁 Структура проекта

web_writer/
├── controllers/          # Контроллеры приложения
│   ├── AuthController.php
│   ├── BookController.php
│   ├── ChapterController.php
│   └── ...
├── models/              # Модели данных
│   ├── User.php
│   ├── Book.php
│   ├── Chapter.php
│   └── ...
├── views/               # Шаблоны представлений
├── assets/              # Статические файлы
│   ├── css/
│   ├── js/
│   └── bs               # Темы для Bootstrap
├── uploads/             # Загружаемые файлы
│   ├── covers/          # Обложки книг
│   └── avatars/         # Аватары пользователей
├── vendor/              # Внешние библиотеки
├── config/              # Конфигурационные файлы
└── index.php           # Точка входа

🛠 Установка

  1. Скопируйте файлы на веб-сервер или склонируйте репозиторий.

  2. Проверьте доступность папок config/ и uploads/ для записи.

  3. Перейдите в браузере на install.php и следуйте шагам:

    Шаг 1: Настройки базы данных

    • Хост БД
    • Имя базы данных
    • Пользователь и пароль

    Шаг 2: Создание администратора

    • Имя пользователя
    • Пароль
    • Email (по желанию)
    • Отображаемое имя (по желанию)
  4. После успешной установки файл config/config.php будет сгенерирован автоматически.

  5. Перейдите на главную страницу приложения (index.php) и войдите под админом.

  6. Не забудьте удалить или переместить файл install.php!!! (не обязательно, но желательно)


📝 Конфигурация

Файл config/config.php содержит:

  • Подключение к базе данных: DB_HOST, DB_USER, DB_PASS, DB_NAME
  • Константы для системных путей
  • Адрес сайта: SITE_URL
  • Имя приложения: APP_NAME = "Web Writer"

🛠 Дальнейшее развитие

  • Возможно, добавится поддержка комментариев для публичных книг и рейтинг. Но это не точно :)

Поддержка

Все ошибки и предложения шлите в issue


📜 Лицензия

Приложение распространяется под лицензией AGPLv3.