Efficient management for physical and digital repository collections.
Library Manager is a web-based system designed to manage items in a physical repository that stores books, magazine volumes and articles, theses, dissertations, and other media types (newspaper clippings, bulletins, etc.). The system supports registration of both physical items (physically located in the repository) and digital items (stored in the application's storage).
- Backend: NestJS, Prisma ORM, PostgreSQL, Better Auth
- Frontend: React, Vite, ShadCN
- Collection Management: Register and organize books, magazines, theses, and media in general
- Dual Format Support: Handle both physical items and digital items
- Loan Requests: Track and manage item loan requests with applicant contact information
- Content Control: Full CRUD operations for repository items
- Content Management System (CMS): Control and update the repository's website content
- Newsletter Management: Access and manage subscribed email lists
- User Authentication: Secure login and logout system
- Role-Based Access: Different permission levels (regular users and moderators)
- Node.js >= 22
- Docker and Docker Compose
- npm
git clone https://github.com/diegoasmello/library-manager.git
cd library-managerdocker-compose up -dnpm install# API
cp apps/api/.env.example apps/api/.env
# Frontend
cp apps/web/.env.example apps/web/.envnpm run db:migratenpm run db:seednpm run devThe API will be available at http://localhost:3000
The frontend at http://localhost:5173