BookShelfX: Library Management System
Overview
BookShelfX is a full-stack application developed as part of a technical assessment, aimed at streamlining library operations for librarians through automation and advanced management tools. The system includes user authentication and access control for librarians and customers.
Key Features
- Library Management Tools: Efficient search, sorting, and filtering for inventory management.
- Automated Notifications: Email notifications on rentals and returns to improve customer experience and reduce administrative load.
- Book Listings & Checkout System: Detailed listings, checkout process, and customer reviews for easy interaction.
- API Integrations: Utilizes Google Books API for book data, OpenAI API for recommendations, and Resend API for notifications.
- Database Management: Manages data with PostgreSQL and Prisma ORM for reliability and scalability.
Tech Stack
- Frontend: Next.js, TypeScript, MUI (Material-UI)
- Backend: Next.js (API Routes)
- Database: PostgreSQL, Prisma ORM
- APIs: Google Books API, OpenAI API, Resend API
- Deployment: Vercel
Setup & Development
Deployed via Vercel for CI/CD. Local setup instructions:
- Environment Setup: Ensure
.env
and.env.local
files include necessary API keys and database URL.DATABASE_URL="your_postgres_url" GOOGLE_BOOKS_API_KEY="your_google_books_api_key" OPENAI_API_KEY="your_openai_api_key" RESEND_API_KEY="your_resend_api_key"
- Commands:
cd ./bookshelfx_technicalassesment npm i npx prisma migrate dev npx prisma db seed npm run dev
Access & Documentation
This project demonstrates expertise in secure user management, Prisma-based database operations, and integrating multiple APIs to deliver a comprehensive library management solution.