An open API service indexing awesome lists of open source software.

https://github.com/lmashik/wishlist

Сохрани идеи подарков, которые хочешь ты, и подсмотри идеи подарков, которые хотят твои близкие
https://github.com/lmashik/wishlist

alembic docker docker-compose fastapi poetry pydantic-v2 python311

Last synced: 10 months ago
JSON representation

Сохрани идеи подарков, которые хочешь ты, и подсмотри идеи подарков, которые хотят твои близкие

Awesome Lists containing this project

README

          

# Сохранялка для идей подарков

--------------------------------------------------------------------
## Описание
Приложение для записи своих материальных желаний и шаринга ими.
Поможет не спрашивать своих друзей и родственников перед праздниками
"А что тебе подарить?"

----------------------------------------
## Используемые технологии

- Python 3.11
- FastAPI
- SQLAlchemy
- Pydantic
- Alembic
- Uvicorn

--------------------------------------------------------------------
## Оглавление
1. [Подготовка](#подготовка)
1. [Установка poetry](#1-установка-poetry)
2. [Запуск виртуального окружения](#2-запуск-виртуального-окружения)
3. [Виртуальное окружение: потенциальные проблемы](#3-виртуальное-окружение-потенциальные-проблемы)
2. [Локальный запуск проекта](#локальный-запуск-проекта)

--------------------------------------------------------------------
## Подготовка

### 1. Установка poetry

1. Выполните:
Для Linux, macOS, Windows (WSL):
```bash
curl -sSL https://install.python-poetry.org | python3 -
```
Для Windows (Powershell):
```bash
(Invoke-WebRequest -Uri https://install.python-poetry.org -UseBasicParsing).Content | py -
```
В macOS и Windows сценарий установки предложит добавить папку с исполняемым
файлом Poetry в переменную PATH. Сделайте это, выполнив следующую команду
(не забудьте поменять {USERNAME} на имя вашего пользователя):

macOS
```bash
export PATH="/Users/{USERNAME}/.local/bin:$PATH"
```
Windows
```bash
$Env:Path += ";C:\Users\{USERNAME}\AppData\Roaming\Python\Scripts"; setx PATH "$Env:Path"
```

Проверить установку:
```bash
poetry --version
```
Установка автодополнений bash (опционально):
```bash
poetry completions bash >> ~/.bash_completion
```

### 2. Запуск виртуального окружения
🔖 [Настройка окружения Poetry для PyCharm](https://www.jetbrains.com/help/pycharm/poetry.html)

Создание виртуального окружения:
```bash
poetry env use python3.11
```
Установка зависимостей (для разработки):
```bash
poetry install --with dev
```
Запуск оболочки и активация виртуального окружения (из папки проекта):
```bash
poetry shell
```
Проверка активации виртуального окружения:
```bash
poetry env list
```

### 3. Виртуальное окружение: потенциальные проблемы
*(проверено на macOS + VSCode)*

**a. виртуальное окружение Poetry недоступно при выборе интерпретатора**

С высокой вероятностью виртуальное окружение создалось вне папки проекта.
Командой ниже можно удостовериться, что окружение будет создано внутри пути
проекта:
```bash
poetry config virtualenvs.in-project true
```
Если проект уже был создан, придется пересоздать окружение:
```bash
poetry env list # вывести имя текущего окружения
poetry env remove # удалить текущее окружение
poetry install --with dev # создаст новое окружение с уже с учетом нового конфига virtualenvs.in-project true
```

**b. путь к Poetry не прописан / приходится указывать заново при переоткрытии проекта в редакторе**

В зависимости от типа используемой оболочки, найдите и откройте bashrc / zshrc
файл:
```bash
nano ~/.zshrc
```
Если в файле нет этой строки, добавьте ее и сохраните изменения
(не забудьте указать свой {USERNAME}):
```bash
export PATH="/Users/{USERNAME}/.local/bin:$PATH"
```

--------------------------------------------------------------------
## Локальный запуск проекта

Для запуска выполните команду
```bash
poetry run task start
```