Skip to content

AvnerHadjadj/pm-books-portal

Repository files navigation

favicon-96x96

PM Books Portal

Library management application built with Angular.

Live Demo

Features

  • View list of books
  • Search books by name and author
  • View book details
  • Add / edit / delete books with form validation
  • Responsive layout for desktop and mobile

Data Source

The app uses Open Library API for initial data population.

Tech Stack

  • Angular
  • TypeScript
  • HTML
  • SCSS/CSS

Run Locally

Prerequisites

  • Node.js (LTS recommended)
  • npm
  • Angular CLI

Installation

  1. Clone the repository:

    git clone https://github.com/AvnerHadjadj/pm-books-portal
    cd pm-books-portal
  2. Install dependencies:

    npm install
  3. Start development server:

    npm start

    or:

    ng serve
  4. Open:

    • http://localhost:4200

Build

npm run build

Production build output is generated in dist/.

Testing

Unit Tests

Run:

npm test

or:

ng test

Optional: Headless test run (CI style)

ng test --watch=false --browsers=ChromeHeadless

Notes / Trade-offs

  • The initial book list is fetched from Open Library with a fixed query/limit for predictable startup behavior.
  • As this is an assignment project, some production hardening items (advanced error handling, caching strategy, and API resiliency) can be expanded further if needed.

Submission Checklist

  • Source code uploaded to a public GitHub repository
  • Public deployed app link provided
  • README includes local run instructions
  • README includes testing instructions
  • Optional feature documented (external book API: Open Library)

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors