Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/vyahello/rent-electro-scooter
🛴 CLI application for renting electro-scooters (python + sqlalchemy orm + travis CI)
https://github.com/vyahello/rent-electro-scooter
cli-application renting-electro-scooters scooter sqlalchemy
Last synced: about 1 month ago
JSON representation
🛴 CLI application for renting electro-scooters (python + sqlalchemy orm + travis CI)
- Host: GitHub
- URL: https://github.com/vyahello/rent-electro-scooter
- Owner: vyahello
- License: mit
- Created: 2020-01-26T13:24:53.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2024-03-20T15:31:48.000Z (9 months ago)
- Last Synced: 2024-11-05T05:17:54.108Z (about 2 months ago)
- Topics: cli-application, renting-electro-scooters, scooter, sqlalchemy
- Language: Python
- Homepage: https://vyahello.github.io/rent-electro-scooter
- Size: 17.2 MB
- Stars: 2
- Watchers: 1
- Forks: 1
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE.md
Awesome Lists containing this project
README
![Screenshot](media/logo.png)
[![made-with-python](https://img.shields.io/badge/Made%20with-Python-1f425f.svg)](https://www.python.org/)
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
[![Build Status](https://travis-ci.org/vyahello/rent-electro-scooter.svg?branch=master)](https://travis-ci.org/vyahello/rent-electro-scooter)
[![License](https://img.shields.io/badge/license-MIT-green.svg)](LICENSE.md)
[![PyPI version shields.io](https://img.shields.io/pypi/v/scooter-rental.svg)](https://pypi.org/project/scooter-rental/)
[![PyPI pyversions](https://img.shields.io/pypi/pyversions/scooter-rental.svg)](https://pypi.org/project/scooter-rental/)
[![PyPi downloads](https://img.shields.io/pypi/dm/scooter-rental.svg)](https://pypi.python.org/pypi/scooter-rental)
[![Downloads](https://pepy.tech/badge/scooter-rental)](https://pepy.tech/project/scooter-rental)# Rent electro scooter
> This is a regular CLI application for renting electro-scooters.
>
> It uses **SQLAlchemy** API as a database core with ORM (Object Relational Mapper) support.## Tools
### Production
- python 3.6, 3.7, 3.8
- [sqlalchemy](https://www.sqlalchemy.org) database
- [alembic](https://alembic.sqlalchemy.org/en/latest/) database migration### Development
- [pytest](https://pypi.org/project/pytest/)
- [black](https://black.readthedocs.io/en/stable/)
- [pylint](https://www.pylint.org/)
- [flake8](http://flake8.pycqa.org/en/latest/)## Usage
![Demo](media/usage.gif)### Installation
Please run following script to obtain latest package from PYPI:
```bash
pip install scooter-rental
```Then please launch following tool from your environment:
```bash
scooter-rental
```### Source code
To be able to run source code please execute command below:
```bash
[email protected]:vyahello/rent-electro-scooter.git
python -m scooter
```## Development notes
### Database migration
For database migrations [alembic](https://alembic.sqlalchemy.org/en/latest/) package is used. Please follow [alembic.ini](alembic.ini) file for instructions.
Once new changes were made to the database, please follow instructions below:
```bash
alembic revision --autogenerate -m "commit message"
alembic upgrade head
alembic current
```### CI
Project has Travis CI integration using [.travis.yml](.travis.yml) file thus code analysis (`black`, `pylint`, `flake8`) and unittests (`pytest`) will be run automatically
after every made change to the repository.To be able to run code analysis, please execute command below:
```bash
./analyse-code.sh
```### Release notes
Please check [changelog](CHANGELOG.md) file to get more details about actual versions and it's release notes.
### Meta
Author – _Volodymyr Yahello_
Distributed under the `MIT` license. See [LICENSE](LICENSE.md) for more information.
You can reach out me at:
* [[email protected]]([email protected])
* [https://twitter.com/vyahello](https://twitter.com/vyahello)
* [https://www.linkedin.com/in/volodymyr-yahello-821746127](https://www.linkedin.com/in/volodymyr-yahello-821746127)### Contributing
1. clone the repository
2. configure Git for the first time after cloning with your `name` and `email`
3. `pip install -r requirements.txt` to install all project dependencies
3. `pip install -r requirements-dev.txt` to install all development project dependencies