{"id":20495541,"url":"https://github.com/vyahello/fake-vehicles-api","last_synced_at":"2025-06-14T15:05:47.358Z","repository":{"id":39762301,"uuid":"222128056","full_name":"vyahello/fake-vehicles-api","owner":"vyahello","description":"🚘  Sample RESTful fake api for vehicles (API Star + travis CI + heroku)","archived":false,"fork":false,"pushed_at":"2023-05-22T22:33:11.000Z","size":445,"stargazers_count":3,"open_issues_count":4,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-05T18:30:31.775Z","etag":null,"topics":["cars","fake","python","rest-api","vehicle"],"latest_commit_sha":null,"homepage":"https://fake-vehicles-api.herokuapp.com","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/vyahello.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-11-16T16:33:06.000Z","updated_at":"2023-03-07T16:39:07.000Z","dependencies_parsed_at":"2022-08-28T02:52:04.137Z","dependency_job_id":null,"html_url":"https://github.com/vyahello/fake-vehicles-api","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/vyahello/fake-vehicles-api","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vyahello%2Ffake-vehicles-api","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vyahello%2Ffake-vehicles-api/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vyahello%2Ffake-vehicles-api/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vyahello%2Ffake-vehicles-api/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vyahello","download_url":"https://codeload.github.com/vyahello/fake-vehicles-api/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vyahello%2Ffake-vehicles-api/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259835393,"owners_count":22918980,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cars","fake","python","rest-api","vehicle"],"created_at":"2024-11-15T17:46:21.539Z","updated_at":"2025-06-14T15:05:47.339Z","avatar_url":"https://github.com/vyahello.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![made-with-python](https://img.shields.io/badge/Made%20with-Python-1f425f.svg)](https://www.python.org/)\n[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)\n[![Checked with pylint](https://img.shields.io/badge/pylint-checked-blue)](https://www.pylint.org)\n[![Checked with flake8](https://img.shields.io/badge/flake8-checked-blue)](http://flake8.pycqa.org/)\n[![Checked with mypy](http://www.mypy-lang.org/static/mypy_badge.svg)](http://mypy-lang.org/)\n[![Build Status](https://travis-ci.org/vyahello/fake-vehicles-api.svg?branch=master)](https://travis-ci.org/vyahello/fake-vehicles-api)\n[![Coverage Status](https://coveralls.io/repos/github/vyahello/fake-vehicles-api/badge.svg?branch=master)](https://coveralls.io/github/vyahello/fake-vehicles-api?branch=master)\n[![License](https://img.shields.io/badge/license-MIT-green.svg)](LICENSE.md)\n[![Hits-of-Code](https://hitsofcode.com/github/vyahello/fake-vehicles-api)](https://hitsofcode.com/view/github/vyahello/fake-vehicles-api)\n\n# Fake Vehicles API\n\u003e A lightweight vehicle (fake) API written in [API Star](https://docs.apistar.com/) 🌟 python WEB API toolkit framework. \n\u003e This project is built only as a sample REST API toolkit.\n\u003e\n\u003e Fake data was generated from https://www.mockaroo.com source.\n\n## Tools\n\n### Production\n\n- python 3.8\n- [API Star](https://docs.apistar.com/) framework\n- [heroku](http://fake-vehicles-api.herokuapp.com) deployment\n\n### Development\n- [travis](https://travis-ci.org/) CI\n- [pytest](https://pypi.org/project/pytest/) framework\n- [black](https://black.readthedocs.io/en/stable/) code formatter\n- [mypy](http://mypy.readthedocs.io/en/latest) static typer\n- [pylint](https://www.pylint.org/) code style\n- [flake8](http://flake8.pycqa.org/en/latest/) code formatter\n\n## Usage\n\n![Screenshot](static/demo.png)\n\n### Quick start\n\nPlease run next commands to start an app:\n```bash\ngit clone git@github.com:aiopymake/fake-vehicles-api.git\npip install -r requirements.txt\npython -m api\n```\n\nThen please open [localhost:5000/](http://localhost:5000/) path in your browser to obtain home page. \n\n## Development notes\n\n### API endpoints\nThere are several endpoints already developed (others will be added soon):\n  - `GET` request on `/api` endpoint to get list of all vehicles e.g:\n    ```bash\n    curl localhost:5000/api\n    ```\n  - `POST` request on `/api` endpoint to create a vehicle e.g:\n    ```bash\n     curl -X POST \\\n    -H \"Content-type: application/json \\\"\n    -d {\"manufacturer\": \"BMW\", \"model\": \"X5\", \"year\": 2011, \"vin\": \"WBAWV53589P465532\"}' \\\n    localhost:5000/api\n    ```\n  - `GET` request on `/api/{id}` endpoint to get single vehicle e.g:\n    ```bash\n    curl localhost:5000/api/99\n    ```\n  - `PUT` request on `/api/{id}` endpoint to update single vehicle e.g:\n    ```bash\n    curl -X PUT \\\n    -H \"Content-type: application/json\" \\\n    -d '{\"manufacturer\": \"BMW\", \"model\": \"X5\", \"year\": 2011, \"vin\": \"WBAWV53589P465532\"}' \\\n    localhost:5000/api/99\n    ```\n  - `DELETE` request on `/api/{id}` to delete single vehicle e.g:\n    ```bash\n    curl -X DELETE localhost:5000/api/99\n    ```\n\n### Testing\nProject is covered with both **_unit_** and **_functional_** tests on REST API endpoints using [pytest](https://docs.pytest.org/en/latest) testing framework.\n\nPlease run next command from the root directory to start testing:\n```bash\npytest\n```\n\nRun only smoke tests:\n```bash\npytest -m smoke\n```\n\nRun only unit tests:\n```bash\npytest -m unittests\n```\n\nPlease open `test-report.html` file in your browser to see testing report.\n\n\n### Deployment\n\nPlease refer to [deployment](DEPLOYMENT.md) page to get instructions on how to provision an app.\n\n## Meta\nAuthor – _Volodymyr Yahello_.\n\nDistributed under the `MIT` license. See [license](LICENSE.md) for more information.\n\nYou can reach out me at:\n* [vyahello@gmail.com](vyahello@gmail.com)\n* [https://twitter.com/vyahello](https://twitter.com/vyahello)\n* [https://www.linkedin.com/in/volodymyr-yahello-821746127](https://www.linkedin.com/in/volodymyr-yahello-821746127)\n\n### Contributing\nI would highly appreciate any contribution and support. If you are interested to add your ideas into project please follow next simple steps:\n\n1. Clone the repository\n2. Configure `git` for the first time after cloning with your `name` and `email`\n3. `pip install -r requirements.txt` to install all project dependencies\n4. `pip install -r requirements-dev.txt` to install all development project dependencies\n5. Create your feature branch (`git checkout -b feature/fooBar`)\n6. Commit your changes (`git commit -am 'Add some fooBar'`)\n7. Push to the branch (`git push origin feature/fooBar`)\n8. Create a new Pull Request\n\n### What's next\n\nAll recent activities and ideas are described at project [issues](https://github.com/vyahello/fake-vehicles-api/issues). \nIf you have ideas you want to change/implement please do not hesitate and create an issue.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvyahello%2Ffake-vehicles-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvyahello%2Ffake-vehicles-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvyahello%2Ffake-vehicles-api/lists"}