Skip to content

ibrahimqarayev/bookstore-task

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BookStore API

This project is based on Maven and includes the following dependencies:

These dependencies define the functionality and configuration of the project.

Task Functional Requirements:

  1. User Registration and Login:

    • Users can register as students or authors.
    • Secure authentication using JWT (JSON Web Tokens).
  2. Student Functionality:

    • Students can log in and access books for reading.
    • View the list of books they're currently reading.
    • Subscribe to specific authors for email notifications.
  3. Author Functionality:

    • Authors can log in and create new books.
    • Delete their own books.
  4. API for Retrieving Readers:

    • Implement an API to retrieve a list of all readers for a specific book.
  5. Email Notifications:

    • Students can subscribe to authors and receive email notifications with book details when a new book is published.

Task Technical Details:

  • Employ PostgreSQL or MySql for data storage.
  • Define database tables using Liquibase.
  • Create an environment using Docker, ensuring that all components can be started with a single "docker-compose up" command.
  • Add unit tests if possible, the higher the test coverage, the better it is.