Gabryelf / Gabryelf/Presentation-Foundation
Presentation-Foundation v0.0.2
- Dominant language
- JavaScript
- Stars
- 0
- Forks
- 0
- PR merge metrics
- No merged PRs in 30d
Description
# Presentation-Foundation v0.0.2
## Что это
Полноценный конструктор презентаций. Загружаешь текстовый файл, выбираешь шаблон, получаешь презентацию со слайдами, навигацией и возможностью редактирования. Всё работает в браузере, без интернета и бэкенда.
## Как запустить
зайди по ссылке в `about` или скачай файлы и в `cmd` зайдя в папку с проектом напиши команду `npx serv`.
## Что умеет
### Загрузка данных
- Поддерживает `.txt`, `.md`, `.json`
- Перетаскивание файлов (drag & drop)
- Автоматический парсинг в структуру слайдов
### Генерация презентаций
- Три шаблона: Современный, Креативный, Корпоративный
- Автоматическое определение типа слайда (текст / список)
- Умное извлечение заголовков
### Просмотр
- Полноэкранный режим презентации
- Навигация стрелками, пробелом, кликами по кнопкам
- Индикаторы прогресса (точки внизу)
- Показ номера текущего слайда
### Редактирование
- Двойной клик по слайду открывает редактор
- Изменение текста в режиме реального времени
- Сохранение и отмена изменений
### Экспорт
- Скачивание презентации в виде отдельного HTML-файла
- Автономный файл со стилями и контентом
- Сохраняется вся структура слайдов
### Сохранение
- Автоматическое сохранение в localStorage
- Восстановление после перезагрузки страницы
- Запоминается текущий слайд
### Удобство
- Умные уведомления о действиях
- Подсветка выбранного шаблона
- Адаптивный дизайн под мобильные устройства
- Тёмная тема
## Архитектура
### Ядро (core/)
- **App** — главный класс-синглтон, управляет всем приложением
- **Component** — абстрактный базовый класс для всех UI-компонентов
- **StateManager** — хранилище состояния с паттерном Observer
- **PresentationGenerator** — генерация слайдов из данных
- **SlideRenderer** — рендеринг и редактирование слайдов
### UI (ui/)
- **Header, Footer** — статические части
- **Templates** — отображение и выбор шаблонов
### Хранилище (storage/)
- **StorageManager** — работа с localStorage
- Сохранение настроек, последней презентации, позиции
### Утилиты (utils/)
- **ExportHelper** — экспорт презентации в HTML
## Как пользоваться
1. **Загрузи файл** — кликни по области или перетащи файл
2. **Выбери шаблон** — кликни на один из трёх вариантов
3. **Сгенерируй** — нажми зелёную кнопку
4. **Смотри презентацию** — листай стрелками или кликай
5. **Редактируй** — двойной клик на любой слайд
6. **Скачай** — кнопка "Скачать" в режиме презентации
## Управление в режиме презентации
| Действие | Клавиша/Элемент |
|----------|-----------------|
| Следующий слайд | `→`, `↓`, пробел |
| Предыдущий слайд | `←`, `↑` |
| Выход | `ESC` или кнопка "Назад" |
| Переход к слайду | Клик по точке внизу |
| Редактирование | Двойной клик на слайде |
## Пример данных для загрузки
Создай `.txt` файл с таким содержимым:
```
Название презентации
Текст первого слайда
Текст второго слайда
- Первый пункт списка
- Второй пункт списка
- Третий пункт списка
Заключительный слайд
```
Первая строка становится заголовком, остальные — слайдами. Строки с `-` автоматически превращаются в списки.
## Чего пока нет
- Экспорта в PDF и PPTX (пока только HTML)
- Загрузки и вставки изображений
- Сложных макетов слайдов
- Онлайн-шаблонов с сервера
- Совместной работы
## Бонусы
- Навигация работает с клавиатуры для удобства презентаций
- Все данные сохраняются — можно закрыть страницу и вернуться
- Экспортированный HTML открывается без интернета
- Код чистый, на классах, с понятной архитектурой
---
**Версия**: 0.0.2
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.