Wherry/README.md
loki5512344 79855585bd Initial commit: LoFlum FTP/SFTP client
Tauri 2 + Rust + Svelte 5. SFTP via ssh2, FTP via suppaftp.
Transfer queue with async worker, SQLite site storage, keychain.
2026-06-13 12:08:08 +02:00

60 lines
1.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# LoFlum
Современный FTP/SFTP клиент на Tauri 2 + Rust + Svelte 5.
## Стек
- **Tauri 2** — шелл
- **Rust** — протоколы, файловая система, очередь передач
- **Svelte 5** — UI
- **tokio** — async runtime
## Протоколы
| Версия | Протоколы |
|--------|-----------|
| v1 | SFTP, FTP, FTPS |
| v2 | S3, WebDAV |
| v3 | Google Drive, Dropbox |
## Разработка
```bash
# Зависимости
bun install
# Dev режим
bun run tauri dev
# Сборка
bun run tauri build
```
## Зависимости системы
- Rust + cargo
- Bun (или npm/pnpm)
- libssh2 (`pacman -S libssh2` на Arch)
- webkit2gtk (`pacman -S webkit2gtk-4.1` на Arch)
## Архитектура
```
src-tauri/src/
├── domain/ — модели данных (Connection, FileEntry, TransferTask, Site)
├── protocols/ — RemoteFs trait + sftp.rs, ftp.rs
├── transfer/ — очередь, воркеры, прогресс
├── storage/ — SQLite (сайты), keychain (пароли)
├── fs/ — локальная ФС + реестр удалённых соединений
└── commands/ — tauri commands (вызовы из фронта)
```
## TODO
- [ ] Chunked upload/download с прогресс-событиями
- [x] FTP/FTPS — FTP реализован (FTPS — stub)
- [ ] Site Manager UI
- [x] Диалог нового соединения
- [x] Transfer Queue с воркером и прогресс-событиями
- [ ] Drag & drop
- [ ] Горячие клавиши