Metadata-Version: 2.1
Name: route-halo
Version: 0.1.2
Summary: Halo the route optimizer tool
Home-page: https://github.com/lavi02/Halo
Author: Hoil Jeong
Author-email: me@haoyi.dev
Keywords: route,optimizer,tsp
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
License-File: NOTICE.md
Requires-Dist: absl-py ==2.0.0
Requires-Dist: aiohttp ==3.9.1
Requires-Dist: aiosignal ==1.3.1
Requires-Dist: annotated-types ==0.6.0
Requires-Dist: anyio ==3.7.1
Requires-Dist: async-timeout ==4.0.3
Requires-Dist: attrs ==23.1.0
Requires-Dist: autopep8 ==2.0.4
Requires-Dist: bcrypt ==4.1.1
Requires-Dist: build ==1.0.3
Requires-Dist: Cerberus ==1.3.5
Requires-Dist: certifi ==2023.11.17
Requires-Dist: cffi ==1.16.0
Requires-Dist: charset-normalizer ==3.3.2
Requires-Dist: click ==8.1.7
Requires-Dist: click-plugins ==1.1.1
Requires-Dist: cligj ==0.7.2
Requires-Dist: colorama ==0.4.6
Requires-Dist: contourpy ==1.0.7
Requires-Dist: cryptography ==41.0.7
Requires-Dist: cycler ==0.12.1
Requires-Dist: dependency-injector ==4.41.0
Requires-Dist: dephell ==0.8.3
Requires-Dist: dephell-archive ==0.1.7
Requires-Dist: dephell-argparse ==0.1.3
Requires-Dist: dephell-changelogs ==0.0.1
Requires-Dist: dephell-discover ==0.2.10
Requires-Dist: dephell-licenses ==0.1.7
Requires-Dist: dephell-links ==0.1.5
Requires-Dist: dephell-markers ==1.0.3
Requires-Dist: dephell-pythons ==0.1.15
Requires-Dist: dephell-setuptools ==0.2.5
Requires-Dist: dephell-shells ==0.1.5
Requires-Dist: dephell-specifier ==0.3.0
Requires-Dist: dephell-venvs ==0.1.18
Requires-Dist: dephell-versioning ==0.1.2
Requires-Dist: docutils ==0.20.1
Requires-Dist: ecdsa ==0.18.0
Requires-Dist: exceptiongroup ==1.2.0
Requires-Dist: fastapi ==0.104.1
Requires-Dist: fiona ==1.9.5
Requires-Dist: fonttools ==4.46.0
Requires-Dist: frozenlist ==1.4.0
Requires-Dist: geopandas ==0.13.2
Requires-Dist: greenlet ==3.0.1
Requires-Dist: h11 ==0.14.0
Requires-Dist: httptools ==0.6.1
Requires-Dist: idna ==3.6
Requires-Dist: importlib-metadata ==6.9.0
Requires-Dist: importlib-resources ==6.1.1
Requires-Dist: jaraco.classes ==3.3.0
Requires-Dist: jeepney ==0.8.0
Requires-Dist: Jinja2 ==3.1.2
Requires-Dist: joblib ==1.3.2
Requires-Dist: keyring ==24.3.0
Requires-Dist: kiwisolver ==1.4.5
Requires-Dist: m2r ==0.3.1
Requires-Dist: markdown-it-py ==3.0.0
Requires-Dist: MarkupSafe ==2.1.3
Requires-Dist: matplotlib ==3.7.4
Requires-Dist: mdurl ==0.1.2
Requires-Dist: mistune ==0.8.4
Requires-Dist: more-itertools ==10.1.0
Requires-Dist: multidict ==6.0.4
Requires-Dist: networkx ==2.8.8
Requires-Dist: nh3 ==0.2.15
Requires-Dist: numpy ==1.24.4
Requires-Dist: ortools ==9.8.3296
Requires-Dist: osmnx ==1.8.0
Requires-Dist: packaging ==23.2
Requires-Dist: pandas ==2.0.3
Requires-Dist: passlib ==1.7.4
Requires-Dist: pexpect ==4.9.0
Requires-Dist: Pillow ==10.1.0
Requires-Dist: pkginfo ==1.9.6
Requires-Dist: protobuf ==4.25.1
Requires-Dist: ptyprocess ==0.7.0
Requires-Dist: pyasn1 ==0.5.1
Requires-Dist: pycodestyle ==2.11.1
Requires-Dist: pycparser ==2.21
Requires-Dist: pydantic ==2.5.2
Requires-Dist: pydantic-core ==2.14.5
Requires-Dist: pygments ==2.17.2
Requires-Dist: PyJWT ==2.8.0
Requires-Dist: PyMySQL ==1.1.0
Requires-Dist: pyparsing ==3.1.1
Requires-Dist: pyproj ==3.5.0
Requires-Dist: pyproject-hooks ==1.0.0
Requires-Dist: python-dateutil ==2.8.2
Requires-Dist: python-dotenv ==1.0.0
Requires-Dist: python-jose ==3.3.0
Requires-Dist: pytz ==2023.3.post1
Requires-Dist: PyYAML ==6.0.1
Requires-Dist: readme-renderer ==42.0
Requires-Dist: redis ==5.0.1
Requires-Dist: requests ==2.31.0
Requires-Dist: requests-toolbelt ==1.0.0
Requires-Dist: rfc3986 ==2.0.0
Requires-Dist: rich ==13.7.0
Requires-Dist: rsa ==4.9
Requires-Dist: ruamel.yaml ==0.18.5
Requires-Dist: ruamel.yaml.clib ==0.2.8
Requires-Dist: scikit-learn ==1.3.2
Requires-Dist: scipy ==1.10.1
Requires-Dist: SecretStorage ==3.3.3
Requires-Dist: shapely ==2.0.2
Requires-Dist: shellingham ==1.5.4
Requires-Dist: six ==1.16.0
Requires-Dist: sniffio ==1.3.0
Requires-Dist: SQLAlchemy ==2.0.23
Requires-Dist: starlette ==0.27.0
Requires-Dist: termcolor ==2.4.0
Requires-Dist: threadpoolctl ==3.2.0
Requires-Dist: tomli ==2.0.1
Requires-Dist: tomlkit ==0.12.3
Requires-Dist: twine ==4.0.2
Requires-Dist: typing-extensions ==4.8.0
Requires-Dist: tzdata ==2023.3
Requires-Dist: urllib3 ==2.1.0
Requires-Dist: uvicorn ==0.24.0.post1
Requires-Dist: watchfiles ==0.21.0
Requires-Dist: websockets ==12.0
Requires-Dist: yarl ==1.9.4
Requires-Dist: yaspin ==2.5.0
Requires-Dist: zipp ==3.17.0

## Introduction

Halo is an open-source OSM (OpenStreetMap) route optimization engine. Built on FastAPI, this RESTful backend provides efficient route calculation and data processing. Leveraging SQLAlchemy for database management and Redis for fast data access, the project maximizes performance.

## Key Features

- **Route Optimization**: Utilizes OSM data to provide accurate route optimization.
- **High-Performance Backend**: Developed with FastAPI for fast and efficient service.
- **Data Management**: Supports structured database management with SQLAlchemy.
- **Caching Mechanism**: Enhances repetitive data request processing speeds using Redis.

## Technology Stack

- **FastAPI**: A modern, fast web framework for easy API development.
- **SQLAlchemy**: Offers powerful SQL toolkit and ORM (Object-Relational Mapping).
- **Redis**: A high-performance key-value store used for data caching.
- **OpenStreetMap**: Provides map data necessary for route optimization, free to use.

## Installation and Execution

```bash
git clone https://github.com/yourusername/halo.git
cd halo
docker-compose up -d
```

## Example ERD
- https://www.erdcloud.com/p/f5MEA63DBzZb7cCJ9

