You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: AGENTS.md
+3-1Lines changed: 3 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -3,6 +3,7 @@
3
3
Shared instructions for all AI agents (Claude, Codex, etc.).
4
4
5
5
- You are an AI assistant working on the project.
6
+
-**Read `docs/architecture.md` before making any code changes. Update it when adding new layers, patterns, services, or changing how components communicate.**
6
7
- Use English unless another language is requested.
7
8
- Follow the working agreement:
8
9
- Run `git status -sb` at session start.
@@ -21,7 +22,8 @@ Shared instructions for all AI agents (Claude, Codex, etc.).
21
22
- Write a failing test (RED), implement minimally (GREEN), refactor (REFACTOR).
22
23
- Coverage thresholds are enforced — `ut` fails if coverage drops.
23
24
- Exceptions: CSS-only, docs, config. See `.claude/rules/10-tdd.md` for full scope.
24
-
- Run ut for gates.
25
+
- Run `xcodebuild test -only-testing:vreaderTests` for unit test gates. Skip UI tests during development.
26
+
- Default simulator: **iPhone 17 Pro** (Dynamic Island — catches safe area bugs).
25
27
-**Task workflow** (three files, one flow):
26
28
-`docs/tasks.md` — **inbox**. User writes free-form descriptions. Agent triages (classify only, do not fix or implement during triage). See `docs/tasks.md` for classification rules, deduplication, and triage record format.
27
29
-`docs/bugs.md` — **bug tracker**. Something implemented but broken. Follow the bug fix workflow defined in `docs/bugs.md` (Understand → RED → GREEN → REFACTOR → Verify → Track).
Copy file name to clipboardExpand all lines: README.md
+82-37Lines changed: 82 additions & 37 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,43 +1,83 @@
1
1
# VReader
2
2
3
-
An iOS reader app for EPUB, PDF, TXT, and Markdown files — built with Swift 6, SwiftUI, and SwiftData.
3
+
**Built entirely by AI — coded, tested, and debugged by AI agents. Human-directed.**
4
+
5
+
An iOS reader for EPUB, PDF, TXT, and Markdown — built entirely by AI coding agents, with Swift 6, SwiftUI, and SwiftData.
4
6
5
7
## About
6
8
7
-
VReader is a modern reading app designed for iPhone and iPad. It provides a unified reading experience across multiple document formats with features like reading position persistence, bookmarks, highlights, full-text search, and reading time tracking. Documents sync across devices via iCloud.
9
+
VReader is a modern reading app designed for iPhone and iPad, built entirely by AI coding agents (Claude Code + Codex CLI) with human direction on requirements and testing. It provides a dual-mode reading experience (native UIKit + unified TextKit 2 reflow) across multiple document formats with annotations, full-text search, AI assistant, TTS, book source scraping, and WebDAV backup.
8
10
9
11
## Features
10
12
11
-
-**Multi-format support** — Read EPUB, PDF, TXT, and Markdown files in a single app
12
-
-**Reading position persistence** — Automatically saves and restores your scroll position per book, surviving app backgrounding, kills, and relaunches
13
-
-**CJK & encoding support** — Automatic encoding detection for GBK, Big5, Shift-JIS, EUC-KR, and other non-UTF-8 files
14
-
-**Large file performance** — Chunked rendering (UITableView) for TXT files over 500K characters; no glyph storage blowup
15
-
-**Bookmarks & highlights** — Save your place and annotate passages with color-coded highlights and notes
16
-
-**EPUB/PDF annotation** — Text selection + highlight/note actions in EPUB (CSS Highlight API) and PDF (PDFAnnotation). Persists across sessions via unified AnnotationAnchor schema
17
-
-**Full-text search** — Search across your entire library with SQLite FTS5 and CJK-aware tokenization. Highlights match at destination
18
-
-**Reading progress bar** — Draggable scrubber in all 4 formats: continuous for TXT/MD, page-based for PDF, chapter-based for EPUB
19
-
-**Table of contents** — Auto-generated for Markdown (heading extraction), built-in for EPUB/PDF
20
-
-**AI assistant** — Summarize sections, multi-turn chat with book context, bilingual translation (9 languages), general AI chat. OpenAI-compatible API
21
-
-**Reading time tracking** — Automatic session tracking with per-book statistics and reading speed calculations
22
-
-**Reader settings** — Configurable font size, font family, line spacing, letter spacing, and theme
23
-
-**Library management** — Grid/list view with persistent preferences, book info sheet, share, context menu
24
-
-**Import from anywhere** — Open files via Share Sheet, Files app, or direct download
13
+
### Reading
14
+
-**Multi-format** — EPUB, PDF, TXT, Markdown in a single app
VReader is built using an AI-assisted coding workflow with multiple agents collaborating through structured processes.
136
+
All code, tests, bug fixes, and documentation are produced by AI coding agents. The human role is directing requirements, reporting bugs, and verifying on device.
96
137
97
138
### Tools
98
139
@@ -129,6 +170,10 @@ Shared rules for all AI agents live in [`AGENTS.md`](AGENTS.md):
129
170
-`CLAUDE.md` — Claude Code project instructions
130
171
-`AGENTS.md` — Shared instructions for all AI coding agents
131
172
173
+
## Status
174
+
175
+
Active development. See [features](docs/features.md) (38 done) and [bugs](docs/bugs.md) (87 fixed) for current state.
0 commit comments