Skip to content

sina-mobarez/recommended-books-system

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Recommended Books System

Restful apis for a system that show user a list of books and recommended books by user rating, and similar books (in this project tried to use raw sql instead ORM)

Installation

in this project we use Postgresql (vector support) for database, and celery for async operations and run tasks in Rabbitmq. sure you installed them in local machine or use dockerize images.

for run postgresql in docker:

docker run --name postgresDB --env POSTGRES_PASSWORD=admin --env POSTGRES_DB=postgres --env POSTGRES_USER=postgres --env POSTGRES_HOST_AUTH_METHOD=trust --publish 5432:5432 --detach ankane/pgvector

for run rabbitmq (celery use it, also you can use redis):

docker run -d -p 5672:5672 rabbitmq

Run Locally

Clone the project

  git clone https://github.com/sina-mobarez/recommended-books-system.git

Go to the project directory

  cd recommended-books-system

Install dependencies

  pip install requirements.txt

migrate and fill database

  python manage.py migrate
  python manage.py setup_db

Start the Celery

  celery -A core worker --loglevel=info

Vectoring all books in db

  python manage.py vectorize_books

Start the Server

  python manage.py runserver
  • make sure active a virtual environment before install dependencies.

Demo

pipeline_recording

Tech Stack

Server: Python, Django, RestFramework. Swagger. Celery, Clip, Torch

Contributing

Contributions are always welcome! You can ask me about this project by email

License

MIT

About

restful apis for a recommended books system

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages