docs: add vitepress docs

This commit is contained in:
Michael 2025-06-21 23:39:02 +03:00
parent a07ddb6a74
commit 3d5d80dc05
6 changed files with 163 additions and 1 deletions

View File

@ -1,4 +1,6 @@
## YaBL monorepo
# YaBL monorepo
- /apps/api
- /apps/web
- /apps/book-reaper
## [Wiki](https://yabl.codeberg.page/)

35
docs/.vitepress/config.ts Normal file
View File

@ -0,0 +1,35 @@
import { defineConfig } from 'vitepress';
// refer https://vitepress.dev/reference/site-config for details
export default defineConfig({
lang: 'en-US',
title: 'YaBL wiki',
description: 'Next-gen digital library',
themeConfig: {
nav: [
{ text: 'Get started', link: '/get-started' },
// {
// text: 'Dropdown Menu',
// items: [
// { text: 'Item A', link: '/item-1' },
// { text: 'Item B', link: '/item-2' },
// { text: 'Item C', link: '/item-3' },
// ],
// },
// ...
],
/*sidebar: [
{
// text: 'Guide',
items: [
{ text: 'Example', link: '/example' },
// ...
],
},
],*/
},
});

View File

@ -0,0 +1,12 @@
:root {
--vp-c-brand-1: #fd7c1a;
--vp-c-brand-2: #ff913d;
--vp-home-hero-name-color: transparent;
--vp-home-hero-name-background: -webkit-linear-gradient(
120deg,
#ff712f 30%,
#ffb555
);
--vp-button-brand-bg: var(--vp-c-brand-1);
--vp-button-brand-hover-bg: var(--vp-c-brand-2);
}

View File

@ -0,0 +1,4 @@
import DefaultTheme from 'vitepress/theme';
import './custom.css';
export default DefaultTheme;

74
docs/get-started.md Normal file
View File

@ -0,0 +1,74 @@
# Get started
## Установка
### Docker
Установка YaBL на linux, необходим предустановленный docker и docker-compose
```sh
mkdir YaBL && cd YaBL
wget https://git.mi6e4ka.dev/YaBL/app/raw/branch/main/docker-compose.yaml
docker compose up -d
```
Пример docker compose файла:
```yaml
services:
app:
image: git.mi6e4ka.dev/yabl/app:latest
container_name: yabl
restart: unless-stopped
ports:
- "8080:8080"
environment:
- DATA_DIR=/app/data
- LIBRARY_DIR=/app/lib
- UPLOADS_DIR=/app/uploads
# - BIND_ADDR=:8080 # адрес, который прослушивает yabl
volumes:
- ./lib:/app/lib # папка для хранения внешней библиотеки
- ./uploads:/app/uploads # папка для загруженных файлов
- ./data:/app/data # папка для хранения файла БД и ключей JWT
```
### OOBE
После запуска контейнера страница первоначальной установки будет доступна по адресу `http://ваш-ip:порт/oobe`. Она предложит создать пользователя - администратора библиотеки
::: info
Пройти первоначальную настройку возможно только один раз
:::
## Импорт книг
YaBL предоставляет возможность загружать книги через web-интерфейс, однако если необходимо загрузить большое количество книг в docker контейнер интегрирован инструмент `book-reaper`
Упакуйте свои книги в формате `fb2` в `zip` архивы и поместите в папку, указанную для хранения внешней библиотеки (по умолчанию `./lib`), поддерживается любой уровень вложенности
```
lib
├── 1.zip
├── 2.zip
└── sub
├── 3.zip
└── subdir
└── 4.zip
```
Затем, запустите `book-reaper` через docker:
```sh
docker compose exec -it app ./book-reaper
```
Дождитесь окончания процесса индексирования, и после этого все книги будут доступны через web-интерфейс!
::: warning
После индексирования файлы книг необходимо сохранить, иначе доступ к обложкам, файлам и чтению книг из web-интерфейса будет недоступен
:::
::: danger
На данный момент не поддерживается инкриментальное индексирование, при повторном запуске book-reaper'а книги дублируются
:::
### Приятного чтения!

35
docs/index.md Normal file
View File

@ -0,0 +1,35 @@
---
layout: home
hero:
name: YaBL
text: Next-gen digital library
tagline: Easier, more convenient and safer
image:
src: https://raw.githubusercontent.com/yetanotherbooklibrary/landing/39d4a77008f001914c1cfc48eebb8a3926aa39e3/icon.png
alt: YaBL logo
actions:
- theme: brand
text: Get started
link: /get-started
- theme: alt
text: Source
link: https://git.mi6e4ka.dev/YaBL
features:
- icon: 🚀
title: High-performance
details: Written in go, converting books on the fly
- icon: 💻
title: Simple
details: Intuitive UX, easy installation
- icon: ✨
title: Beautiful
details: Uses the Material 3 UI
- icon: 💾
title: Self-host
details: Keep all your favorite books on your fridge!
- icon: 🔐
title: Security
details: Manage your data yourself (TOTP and passkey auth on the way)
---