Skip to content

DRF app which allows users to organize their books

Notifications You must be signed in to change notification settings

kyoredes/Booktracker

Repository files navigation

BookTracker

BookTracker is a RESTful API project built with Django REST Framework (DRF). It allows users to organize their book collections into categorized reading lists. The application is designed to track books you plan to read, are currently reading, or have already finished.

image image image image Celery Pytest

Features

  • User Authentication: User registration and login.
  • Book Management:
    • Add books with details like title, author(s), and description.
    • Manage your book lists.
    • search for books using Elasticsearch
  • Categorized Lists:
    • Create your book lists
  • API Endpoints:
    • Create, update, and delete books.
    • Add books to categorized lists.
    • View and manage your reading lists.

Installation

Prerequisites

  • Python 3
  • PostgreSQL
  • uv

Steps

  1. Clone the repository:

    git clone https://github.com/kyoredes/Booktracker/
    cd booktracker
  2. Create a virtual environment and activate it:

    uv init
  3. Install dependencies:

    uv sync
  4. Configure the database in the .env file:

    DATABASE_URL=postgres://USER:PASSWORD@HOST:PORT/DBNAME
  5. Apply migrations:

     make migrate
  6. Run the development server:

    make dev

The API will be available at http://127.0.0.1:8000/.

Testing

Run tests to ensure the project is functioning correctly:

make test

Show all urls:

make urls

About

DRF app which allows users to organize their books

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published