Giới thiệu
Readest là một trình đọc sách điện tử (eBook reader) hiện đại, mã nguồn mở, được xây dựng dựa trên các công nghệ web tiên tiến như Next.js và Tauri. Dự án này được phát triển như một phiên bản viết lại (rewrite) hiện đại của ‘Foliate’, nhằm giải quyết vấn đề phân mảnh trải nghiệm đọc sách bằng cách cung cấp khả năng hỗ trợ đa nền tảng thực sự (macOS, Windows, Linux, Android, iOS và Web). Readest không chỉ đơn thuần hiển thị nội dung sách mà còn tích hợp các công cụ hỗ trợ ‘đọc sâu’ (deep reading) như ghi chú, tra cứu, dịch thuật và đồng bộ hóa dữ liệu đọc giữa các thiết bị, giúp người dùng duy trì mạch đọc liền mạch bất kể họ đang sử dụng thiết bị nào.
Tính năng chính
- Hỗ trợ đa định dạng: Đọc tốt các định dạng phổ biến như EPUB, MOBI, AZW3, FB2, CBZ, và hỗ trợ thử nghiệm cho PDF.
- Đồng bộ đa nền tảng: Tự động đồng bộ tiến độ đọc, highlight, ghi chú và bookmark giữa các thiết bị thông qua tài khoản.
- Text-to-Speech (TTS): Tính năng đọc to văn bản tích hợp, hỗ trợ nghe sách thay vì đọc.
- Chế độ đọc song song (Parallel Read): Cho phép mở hai cuốn sách hoặc tài liệu song song trên cùng một màn hình (split-view), cực kỳ hữu ích cho việc đối chiếu hoặc học ngôn ngữ.
- Công cụ hỗ trợ mạnh mẽ: Tích hợp tra từ điển, tra cứu Wikipedia và dịch đoạn văn bản tức thì (hỗ trợ DeepL).
- Giao diện tùy biến cao: Hỗ trợ Dark mode, thay đổi font chữ, bố cục trang (cuộn hoặc lật trang) và custom CSS.
Hướng dẫn cài đặt Local (macOS)
Để chạy Readest trên macOS (chế độ phát triển), bạn cần cài đặt Node.js, pnpm và Rust (do sử dụng Tauri). Các bước thực hiện:
- Cài đặt Prerequisites:
- Cài đặt Rust:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh - Cài đặt Node.js và pnpm (khuyên dùng Homebrew):
brew install node && npm install -g pnpm
- Cài đặt Rust:
- Clone Repository:
git clone https://github.com/readest/readest.git cd readest # Cập nhật các submodules cần thiết git submodule update --init --recursive - Cài đặt Dependencies:
pnpm install - Thiết lập Vendors (PDF.js, v.v.):
Chạy lệnh sau để copy các thư viện cần thiết vào thư mục public:
pnpm --filter @readest/readest-app setup-vendors - Chạy ứng dụng (Dev Mode):
pnpm tauri devỨng dụng sẽ khởi động dưới dạng cửa sổ desktop native.
Hướng dẫn Docker
Readest có thể được triển khai dưới dạng web app thông qua Docker. Bạn có thể tự build image từ source code.
Cách build và chạy:
- Build Docker Image:
docker build -t readest-web . - Run Container:
Chạy container và map port 3000:
docker run -d -p 3000:3000 --name my-readest readest-webSau đó truy cập
http://localhost:3000trên trình duyệt để sử dụng phiên bản web.
Ví dụ Code (Docker Compose)
Vì Readest là một ứng dụng người dùng cuối (End-User Application), ‘code mẫu’ hữu ích nhất là file cấu hình docker-compose.yml để bạn có thể tự host server đọc sách riêng của mình (Self-hosted) một cách nhanh chóng:
version: '3.8'
services:
readest:
# Sử dụng image tự build hoặc image từ cộng đồng (nếu có)
build: .
container_name: readest_app
ports:
- "3000:3000"
environment:
- NODE_ENV=production
# Cấu hình biến môi trường nếu cần thiết (tham khảo .env.example)
volumes:
# Persist dữ liệu nếu ứng dụng hỗ trợ lưu trữ local
- ./readest-data:/app/data
restart: unless-stopped
Lưu tệp này là docker-compose.yml trong thư mục project và chạy lệnh docker-compose up -d để khởi động.
Sources
- ecosyste.ms
- flathub.org
- linuxlinks.com
- gitee.com
- reddit.com
- github.com
- hkmu.edu.hk
- readest.com
- github.com
Github Page
https://github.com/readest/readest