LiteShelf Library

A modern, responsive frontend for the LiteShelf library management system. This application allows users to browse, add, edit, and borrow books from the library collection.

✨ Features

  • Book Management: Easily add new books, edit existing book details, or remove books from the library.
  • Comprehensive Book Listings: View all books in a clean, table-based layout with search and filter capabilities.
  • Detailed Book View: Click on any book to see its full details, including title, author, genre, and description.
  • Borrowing System: A simple form to borrow books and a summary page to track borrowed items.
  • Responsive Design: A mobile-first design that works seamlessly across desktops, tablets, and mobile devices.
  • Modern Tech Stack: Built with the latest web technologies for a fast and reliable user experience.

🚀 Tech Stack

📦 Getting Started

Follow these instructions to get a copy of the project up and running on your local machine for development and testing purposes.

Prerequisites

  • Node.js (v22 or higher recommended)
  • npm or your favorite package manager

Installation

  1. Clone the repository:

    git clone https://github.com/your-username/liteshelf-library-frontend.git
    cd liteshelf-library-frontend
  2. Install dependencies:

    npm install

📜 Available Scripts

In the project directory, you can run the following commands:

  • npm run dev: Runs the app in development mode. Open http://localhost:5173 to view it in the browser.

  • npm run build: Builds the app for production to the dist folder.

  • npm run preview: Runs a local server to preview the app in production mode.

  • npm run lint: Runs ESLint to check for linting errors.

📁 Project Structure

The project follows a standard Vite + React project structure, with key directories organized as follows:

/src
├───components/   # Shared and reusable UI components
├───hooks/        # Custom React hooks
├───lib/          # Utility functions, schemas, etc.
├───pages/        # Page components corresponding to routes
├───redux/        # Redux store and RTK Query API
├───routes/       # Route configuration
└───types/        # TypeScript type definitions

🤝 Contributing

Contributions, issues, and feature requests are welcome. Feel free to check the issues page if you want to contribute.

📝 License

This project is licensed under the MIT License. See the LICENSE file for details.