An open API service indexing awesome lists of open source software.

https://github.com/dimamik/what-to-read

Spotify for the books. Uses collaborative filtering to find you books to read based on your previous reads
https://github.com/dimamik/what-to-read

docker-compose elasticsearch flask react

Last synced: 3 months ago
JSON representation

Spotify for the books. Uses collaborative filtering to find you books to read based on your previous reads

Awesome Lists containing this project

README

          

[![Contributors][contributors-shield]][contributors-url]
[![Forks][forks-shield]][forks-url]
[![Stargazers][stars-shield]][stars-url]
[![Issues][issues-shield]][issues-url]
[![MIT License][license-shield]][license-url]



What To Read


Single Page Application designed to help you find a book to read having books you have read before.

Based on Collaborative filtering technique







Report Bug
·
Request Feature


animated

Table of Contents




  1. Project Structure


  2. Build With


  3. Getting Started


  4. Usage

  5. Roadmap

  6. Contributing

  7. License

  8. Contact


## Project Structure


├── nginx - reversed proxy
├── ui - React Front
├── rec_api - REST API server handling recommendations
├── search_api - REST API server handling books searching
└── img - images for Readme.md

## Built With

* Front - [React](https://reactjs.org/)
* Back - [Python Flask](https://flask.palletsprojects.com/en/2.0.x/)
* Database - [Elasticsearch](https://www.elastic.co/)
* Web Server Interface - [UWSGI](https://uwsgi-docs.readthedocs.io/en/latest/)
* Reversed proxy - [NGINX](https://www.nginx.com/)
* Docker-compose

## Getting Started

To get a local copy up and running follow these simple steps.

### Prerequisites

`docker-compose` and `git` installed on server with open ip adress and ports `80,5000,5001`

### Installation

1. Clone the repo
```sh
git clone https://github.com/dimamik/what-to-read.git
```
2. Run docker-compose
```sh
cd what-to-read
docker-compose up --build
```

## Roadmap

See the [open issues](https://github.com/dimamik/what-to-read/issues) for a list of proposed features (and known issues).

## Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are **greatly appreciated**.

1. Fork the Project
2. Create your Feature Branch (`git checkout -b feature/AmazingFeature`)
3. Commit your Changes (`git commit -m 'Add some AmazingFeature'`)
4. Push to the Branch (`git push origin feature/AmazingFeature`)
5. Open a Pull Request

## License

Distributed under the GPL-3.0.
See `LICENSE` for more information.

## Contact

Project Link: [https://github.com/dimamik/what-to-read](https://github.com/dimamik/what-to-read)

[contributors-shield]: https://img.shields.io/github/contributors/dimamik/what-to-read?style=for-the-badge
[contributors-url]: https://github.com/dimamik/what-to-read/graphs/contributors
[forks-shield]: https://img.shields.io/github/forks/dimamik/what-to-read?style=for-the-badge
[forks-url]: https://github.com/dimamik/what-to-read/network/members
[stars-shield]: https://img.shields.io/github/stars/dimamik/what-to-read?style=for-the-badge
[stars-url]: https://github.com/dimamik/what-to-read/stargazers
[issues-shield]: https://img.shields.io/github/issues/dimamik/what-to-read?style=for-the-badge
[issues-url]: https://github.com/dimamik/what-to-read/issues
[license-shield]: https://img.shields.io/github/license/dimamik/what-to-read?style=for-the-badge
[license-url]: https://github.com/dimamik/what-to-read/blob/master/LICENSE