# Unified Project Structure ``` books/ ├── .github/ # CI/CD workflows (future) │ └── workflows/ │ └── deploy.yaml ├── frontend/ # React PWA application │ ├── src/ │ │ ├── components/ # Reusable UI components │ │ │ ├── layout/ │ │ │ ├── books/ │ │ │ ├── progress/ │ │ │ ├── calendar/ │ │ │ └── common/ │ │ ├── pages/ # Page/route components │ │ │ ├── Home.jsx │ │ │ ├── AddBook.jsx │ │ │ ├── BookDetail.jsx │ │ │ └── CalendarView.jsx │ │ ├── hooks/ # Custom React hooks │ │ │ ├── useBooks.js │ │ │ ├── useProgress.js │ │ │ └── useLogs.js │ │ ├── services/ # API client services │ │ │ ├── api.js │ │ │ ├── booksService.js │ │ │ └── logsService.js │ │ ├── context/ # React Context providers │ │ │ └── AppContext.jsx │ │ ├── utils/ # Frontend utilities │ │ │ ├── dateUtils.js │ │ │ ├── paceUtils.js │ │ │ └── validation.js │ │ ├── styles/ # Global styles │ │ │ └── index.css │ │ └── App.jsx # Root component │ ├── public/ # Static assets │ │ ├── manifest.json # PWA manifest │ │ ├── icons/ # PWA icons (192, 512) │ │ └── favicon.ico │ ├── tests/ # Frontend tests │ │ ├── components/ │ │ └── utils/ │ ├── index.html │ ├── vite.config.js # Vite + PWA config │ ├── tailwind.config.js # Tailwind CSS config │ ├── postcss.config.js │ ├── package.json │ ├── .env.example │ └── Dockerfile # Frontend container ├── backend/ # Node.js Express API │ ├── src/ │ │ ├── routes/ # API route definitions │ │ │ ├── index.js │ │ │ ├── books.js │ │ │ ├── logs.js │ │ │ └── health.js │ │ ├── controllers/ # Request handlers │ │ │ ├── booksController.js │ │ │ └── logsController.js │ │ ├── services/ # Business logic │ │ │ ├── openLibraryService.js │ │ │ └── paceCalculationService.js │ │ ├── middleware/ # Express middleware │ │ │ ├── errorHandler.js │ │ │ ├── validateRequest.js │ │ │ └── cors.js │ │ ├── utils/ # Backend utilities │ │ │ ├── logger.js │ │ │ └── validation.js │ │ ├── prisma/ # Prisma client │ │ │ └── client.js │ │ └── server.js # Express app entry │ ├── prisma/ # Prisma schema and migrations │ │ ├── schema.prisma │ │ └── migrations/ │ ├── tests/ # Backend tests │ │ ├── controllers/ │ │ └── services/ │ ├── package.json │ ├── .env.example │ └── Dockerfile # Backend container ├── docs/ # Project documentation │ ├── prd/ # Sharded PRD │ ├── architecture/ # Sharded architecture (this doc) │ ├── brief.md │ ├── brainstorming-session-results.md │ └── deployment.md ├── .env.example # Environment variables template ├── .gitignore ├── docker-compose.yml # Local development orchestration ├── README.md # Project overview and setup └── package.json # Root package.json (optional) ``` ---