Conda package manager is recommended. Create a conda environment.
conda create -n ai_pet python==3.10
Activate conda environment and install poetry
conda activate ai_pet
pip install poetry
Then you can run the client using the following command:
ai_pet --help
or with Poetry
:
poetry run ai_pet --help
```
### Makefile usage
[`Makefile`](https://github.com/andeya/ai-pet/blob/main/Makefile) contains a lot of functions for faster development.
<details>
<summary>Install all dependencies and pre-commit hooks</summary>
<p>
Install requirements:
```bash
make install
Pre-commit hooks coulb be installed after git init
via
make pre-commit-install
Codestyle and type checks
Automatic formatting uses ruff
.
make polish-codestyle
# or use synonym
make formatting
Codestyle checks only, without rewriting files:
make check-codestyle
Note:
check-codestyle
usesruff
anddarglint
library
Code security
If this command is not selected during installation, it cannnot be used.
make check-safety
This command launches Poetry
integrity checks as well as identifies security issues with Safety
and Bandit
.
make check-safety
Tests with coverage badges
Run pytest
make test
All linters
Of course there is a command to run all linters in one:
make lint
the same as:
make check-codestyle && make test && make check-safety
Docker
make docker-build
which is equivalent to:
make docker-build VERSION=latest
Remove docker image with
make docker-remove
More information about docker.
Cleanup
Delete pycache files
make pycache-remove
Remove package build
make build-remove
Delete .DS_STORE files
make dsstore-remove
Remove .mypycache
make mypycache-remove
Or to remove all above run:
make cleanup
This project is licensed under the terms of the Apache Software License 2.0
license. See LICENSE for more details.
@misc{ai_pet,
author = {andeya},
title = {Awesome `ai-pet` is a AI pet chat application},
year = {2024},
publisher = {GitHub},
journal = {GitHub repository},
howpublished = {\url{https://github.com/andeya/ai-pet}}
}
This project was generated with py-layout