This repository has been archived on 2026-07-21. You can view files and clone it. You cannot open issues or pull requests or push a commit.

Cloud Reader

A full-stack e-book reader application with cross-device sync. Upload EPUB/PDF files, track reading progress, bookmark passages, take notes, and customize your reading experience.

Architecture

cloud-reader/
├── backend/         # Django REST API (canonical backend)
│   ├── config/      # Django project settings
│   ├── apps/
│   │   ├── users/       # User auth (JWT)
│   │   ├── books/       # Books, e-books, reading progress, settings
│   │   └── annotations/ # Bookmarks and notes
│   ├── manage.py
│   └── requirements.txt
├── frontend/        # React + Vite + TypeScript (canonical frontend)
│   ├── src/
│   │   ├── api/         # API client (axios with JWT refresh)
│   │   ├── components/  # Reusable components
│   │   ├── context/     # Auth and annotations context
│   │   ├── hooks/       # Custom hooks
│   │   ├── pages/       # Route pages (Library, Reader, AddBook, Auth, Settings)
│   │   └── types/       # TypeScript type definitions
│   └── package.json
└── docker-compose.yml

Quick Start

docker compose up --build

Backend (standalone)

cd backend
pip install -r requirements.txt
python manage.py migrate
python manage.py runserver

Frontend (standalone)

cd frontend
yarn install
yarn dev

Migration Notes

Consolidated from duplicate api/ + web/ into single backend/ + frontend/ canonical structure.

  • backend/ kept as canonical; api/ features (e-book uploads, reading progress, reading settings) merged in.
  • frontend/ kept as canonical; web/ pages (Library, Reader, AddBook, Auth, Settings) merged in.
  • api/ and web/ directories removed.
S
Description
No description provided
Readme
6.9 MiB
Languages
TypeScript 67.4%
Python 25%
CSS 7.2%
JavaScript 0.2%
Dockerfile 0.1%