Metadata-Version: 2.4
Name: kep-starter
Version: 0.1.0
Summary: CLI «kep»: создаёт папку kep с шаблоном приложения в текущей директории
Project-URL: Repository, https://github.com/willalone/pyapp2
License: MIT
Keywords: cli,scaffold,template
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Requires-Python: >=3.10
Description-Content-Type: text/markdown

# kep-starter

Утилита для развёртывания шаблона: в **текущей рабочей директории** создаётся каталог `kep/` со всеми файлами приложения (PyQt6, MySQL и т.д.). Команда в терминале называется **`kep`** (и доступен запуск `python -m kep`).

## Имя на PyPI

Короткое имя **`kep`** на [PyPI](https://pypi.org/project/KEP/) уже занято пакетом **KEP** (другое назначение). Поэтому дистрибутив здесь называется **`kep-starter`**. Если вы публикуете только у себя (частный индекс) или ставите из исходников, можете поменять `name` в `pyproject.toml` на любое свободное.

## Установка (после публикации на PyPI)

```bash
pip install kep-starter
```

Пока вы не загрузили релиз на PyPI, команда выше не найдёт пакет — используйте `pip install .` из клона или `.whl` из `dist/` (см. ниже).

## Публикация на PyPI (делаете вы у себя на машине)

Токен **никому не отправляйте** и не коммитьте в git. Удобнее один раз задать переменные в текущей сессии терминала:

1. На [pypi.org](https://pypi.org/manage/account/token/) создайте API token (для всего аккаунта или для проекта `kep-starter` после первой загрузки).
2. В корне репозитория (где `pyproject.toml`):

```bash
cd "/Users/user/Desktop/чекбоксы"
python3 -m pip install --upgrade build twine
python3 -m build
```

3. Загрузка на PyPI (подставьте свой токен вместо `pypi-...` — он начинается с `pypi-`):

```bash
export TWINE_USERNAME=__token__
export TWINE_PASSWORD='pypi-ВАШ_ТОКЕН_СЮДА'
python3 -m twine upload dist/*
```

После успешной загрузки страница пакета будет по адресу  
[https://pypi.org/project/kep-starter/](https://pypi.org/project/kep-starter/)  
(если имя `kep-starter` свободно; иначе PyPI вернёт ошибку — смените `name` в `pyproject.toml` и пересоберите).

Повторная загрузка **той же версии** (`0.1.0`) запрещена: перед новым релизом увеличьте `version` в `pyproject.toml` и снова выполните `python3 -m build` и `twine upload`.

### Что получит пользователь после `pip install kep-starter`

1. Устанавливается пакет и команда **`kep`** (и модуль `python -m kep`).
2. Пользователь переходит в **корень своего проекта** и выполняет **`kep`** — в этой директории появляется папка **`kep/`** со всеми файлами шаблона (как у вас при локальной проверке).

`pip install` сам по себе **не** создаёт папку `kep` в проекте пользователя — её создаёт только запуск **`kep`** (или `python -m kep`) из нужной директории.

Установка из локального клона репозитория (из каталога, где лежит `pyproject.toml`):

```bash
pip install .
```

Режим разработки (изменения в `kep/` сразу видны без переустановки):

```bash
pip install -e .
```

## Использование

Сначала пакет должен быть установлен (`pip install kep-starter` или `pip install .` из корня репозитория). Иначе в терминале будет **`command not found: kep`**.

Перейдите в каталог своего проекта — туда, где должна появиться папка `kep` (подставьте свой путь вместо примера):

```bash
cd ~/Documents/мой-проект
kep
```

То же самое:

```bash
python -m kep
```

### Локальная проверка без PyPI

Выполняйте по шагам; строки с `#` — только комментарии, их **не** вставляйте в терминал.

```bash
cd "/Users/user/Desktop/чекбоксы"
python3 -m pip install --upgrade build
python3 -m build
python3 -m pip install dist/kep_starter-0.1.0-py3-none-any.whl
mkdir -p /tmp/kep-smoke && cd /tmp/kep-smoke
kep
ls kep
```

Путь `cd "/Users/user/Desktop/чекбоксы"` замените на реальный путь к вашему клону. После `python3 -m build` имя файла в `dist/` может отличаться по версии — посмотрите `ls dist/*.whl` и подставьте его в `pip install`.

На macOS, Linux и Windows создаётся каталог `./kep` с копией файлов. Если `kep` уже существует, команда завершится с ошибкой (ничего не перезаписывается).

Дальше в типичном случае:

```bash
cd kep
pip install -r requirements.txt
python main.py
```

Не забудьте настроить MySQL и при необходимости поправить `db.py` и выполнить `schema.sql`.
