- Installed Prisma and @prisma/client in backend/ directory - Initialized Prisma with PostgreSQL provider (Prisma 7.x) - Created prisma/schema.prisma with Book and ReadingLog models - Configured prisma.config.ts with DATABASE_URL from environment - Added .gitignore for Prisma-generated files Book model includes: - All required fields (id, title, author, totalPages, coverUrl, deadlineDate, isPrimary, status) - Timestamps (createdAt, updatedAt) - Indexes on deadlineDate and status for query performance - One-to-many relationship with ReadingLog ReadingLog model includes: - All required fields (id, bookId, logDate, currentPage) - Timestamps (createdAt, updatedAt) - Foreign key relationship to Book with cascade delete - Unique constraint on (bookId, logDate) - one entry per book per day - Indexes on bookId and logDate for query performance All acceptance criteria met: ✅ Prisma installed in backend/ ✅ Initialized with PostgreSQL provider ✅ schema.prisma defines Book and ReadingLog models ✅ Appropriate indexes for performance ✅ One-to-many relationship defined ✅ Unique constraint ensures one log entry per book per day Schema validated with npx prisma format 🤖 Generated with Claude Code (https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
6 lines
93 B
Plaintext
6 lines
93 B
Plaintext
node_modules
|
|
# Keep environment variables out of version control
|
|
.env
|
|
|
|
/src/generated/prisma
|