A lightweight movie search service written in responder python HTTP service framework. Please follow https://movie-search-rest-api.herokuapp.com link app to see how it looks like.
- python 3.7
- responder framework
- vue js framework
- nginx
- docker
- heroku deployment
- pytest framework
- travis & github CI
The page could be accessed via
http://0.0.0.0
endpoint.
The page could be accessed via
http://0.0.0.0:7777/api
endpoint.
Docker setup is based on docker-compose which consists of 3 official docker images:
- vyahello/movie-searcher-base
- vyahello/movie-searcher-backend
- vyahello/movie-searcher-frontend
Please run the following command to launch an application via docker-compose (it uses docker-compose.yml file):
cd docker
docker-compose up
Get access to the app via http://0.0.0.0
endpoint.
cd k8s
kubectl apply -f single-deployment.yaml
Get access to the app via http://0.0.0.0
endpoint. Note it will create 2 replicas.
Please run next commands to start an app via source code:
git clone git@github.com:vyahello/movie-search-api.git
pip install -r requirements.txt
python movie_searcher.py
In general static code analysis consists of following tools: black
, flake8
, pylint
, mypy
, and unittests
accordingly.
To be able to start static code analysis locally please run following script from the root directory of the project:
./run-code-analysis.sh install-dependencies
Please refer to deployment page to get instructions on how to provision an app.
Please refer to changelog page for app release notes.
Author – Volodymyr Yahello.
Distributed under the MIT
license. See license for more information.
You can reach out me at:
- vyahello@gmail.com
- https://twitter.com/vyahello
- https://www.linkedin.com/in/volodymyr-yahello-821746127
I would highly appreciate any contribution and support. If you are interested to add your ideas into project please follow next simple steps:
- Clone the repository
- Configure
git
for the first time after cloning with yourname
andemail
pip install -r requirements.txt
to install all project dependenciespip install -r requirements-dev.txt
to install all development project dependencies- Create your feature branch (
git checkout -b feature/fooBar
) - Commit your changes (
git commit -am 'Add some fooBar'
) - Push to the branch (
git push origin feature/fooBar
) - Create a new Pull Request