> ## Documentation Index
> Fetch the complete documentation index at: https://ayakaleaf-pro.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Обзор

Overleaf работает как набор сервисов, которые вызывают друг друга по HTTP внутри сети Docker. Страницы этого раздела описывают эти внутренние API. Они основаны на файлах OpenAPI в [`develop/hoppscotch/openapi/`](https://github.com/ayaka-notes/ayakaleaf-pro/tree/server-pro/develop/hoppscotch/openapi), написанных по коду каждого сервиса.

Ни один из этих API не является публичным: они доступны только внутри сети Docker, и у большинства нет аутентификации.

## Сервисы

| Сервис | Адрес | Что делает |
| - | - | - |
| [web](https://ayakaleaf-pro.mintlify.site/ru/dev/service-api/web.md) | `http://web:3000` | Основное приложение. Его приватный API вызывают другие сервисы и cron-скрипты образа |
| [document-updater](https://ayakaleaf-pro.mintlify.site/ru/dev/service-api/document-updater.md) | `http://document-updater:3003` | Держит открытые в редакторе документы в Redis, применяет правки и записывает их обратно в Mongo |
| [docstore](https://ayakaleaf-pro.mintlify.site/ru/dev/service-api/docstore.md) | `http://docstore:3016` | Хранит каждый документ каждого проекта в коллекции Mongo `docs` |
| [real-time](https://ayakaleaf-pro.mintlify.site/ru/dev/service-api/real-time.md) | `http://real-time:3026` | Держит socket.io-соединения редактора и пересылает правки между браузерами и сервисами |
| [chat](https://ayakaleaf-pro.mintlify.site/ru/dev/service-api/chat.md) | `http://chat:3010` | Хранит чат проекта и ветки комментариев |
| [project-history](https://ayakaleaf-pro.mintlify.site/ru/dev/service-api/project-history.md) | `http://project-history:3054` | Превращает правки из очереди в изменения истории и отправляет их в history-v1; хранит метки |
| [history-v1](https://ayakaleaf-pro.mintlify.site/ru/dev/service-api/history-v1.md) | `http://history-v1:3100` | Хранит полную историю каждого проекта и содержимое файлов в виде блобов |
| [filestore](https://ayakaleaf-pro.mintlify.site/ru/dev/service-api/filestore.md) | `http://filestore:3009` | Отдаёт файлы шаблонов и, только для чтения, блобы, записанные history-v1 |
| [clsi](https://ayakaleaf-pro.mintlify.site/ru/dev/service-api/clsi.md) | `http://clsi:3013` | Компилирует проекты, запускает SyncTeX и подсчёт слов, конвертирует документы |
| [notifications](https://ayakaleaf-pro.mintlify.site/ru/dev/service-api/notifications.md) | `http://notifications:3042` | Хранит уведомления, показываемые в списке проектов |
| [linked-url-proxy](https://ayakaleaf-pro.mintlify.site/ru/dev/service-api/linked-url-proxy.md) | `http://linked-url-proxy:3066` | Загружает внешние URL для web и отклоняет внутренние адреса |
| [third-party-datastore](https://ayakaleaf-pro.mintlify.site/ru/dev/service-api/third-party-datastore.md) | `http://third-party-datastore:3002` | Синхронизирует проекты с Dropbox через одну очередь заданий на пользователя |

## Аутентификация

* **web:** HTTP basic auth с `WEB_API_USER` и `WEB_API_PASSWORD`. Маршруты git-bridge вместо этого используют персональный токен доступа.
* **history-v1:** HTTP basic auth от имени `staging` с `STAGING_PASSWORD` или JWT.
* **Все остальные сервисы:** нет.

## Попробовать

Среда разработки запускает [Hoppscotch](https://github.com/hoppscotch/hoppscotch) на `http://localhost:9170` с прокси, который обращается к сервисам по их адресам в Docker. В её [README](https://github.com/ayaka-notes/ayakaleaf-pro/blob/server-pro/develop/README.md#hoppscotch) описано, как настроить прокси и импортировать файлы OpenAPI.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.