# Базовый код для разработки своего SDK + CLI
apps -- Хранилище классов, в котором лежит код с основной логикой
cli -- Логика обработки CLI команд
core -- Настройки, подключения и все остальное общее
packages -- Тут я храню объекты для собственной реализации каких-то протоколов, удобных декораторов
services -- Классы для работы с какими-то внешними сервисами. Тут возможно нужна пагинация, хитрая авторизация и тому подобное
__main__ -- Тут выполняется код, когда приложение вызывается как cli
__init__ -- Тут хранится список объектов, которые доступны для импорта из корня `from basic_sdk import some` и бывает иногда здесь нужно импортировать что-то, чтобы объекты определились при старте
Для пуша в pypi нужно прописать `POETRY_PYPI_TOKEN_PYPI` в .env и выполнить `make push`
Что будет:
- Пройдут тесты
- Сделается `poetry lock`
- И пройдет линтеры
Raw data
{
"_id": null,
"home_page": "https://github.com/p141592/basic_sdk",
"name": "example_sdk",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.12,<4.0",
"maintainer_email": "",
"keywords": "",
"author": "Nikolay Baryshnikov",
"author_email": "root@k0d.ru",
"download_url": "https://files.pythonhosted.org/packages/b3/08/08a355bee713a939b6949f0e15cc23dacbdaa4eaf8379c736993d0f8663a/example_sdk-0.0.2.tar.gz",
"platform": null,
"description": "# \u0411\u0430\u0437\u043e\u0432\u044b\u0439 \u043a\u043e\u0434 \u0434\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0441\u0432\u043e\u0435\u0433\u043e SDK + CLI\n\napps -- \u0425\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u043a\u043b\u0430\u0441\u0441\u043e\u0432, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043b\u0435\u0436\u0438\u0442 \u043a\u043e\u0434 \u0441 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u043b\u043e\u0433\u0438\u043a\u043e\u0439\ncli -- \u041b\u043e\u0433\u0438\u043a\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 CLI \u043a\u043e\u043c\u0430\u043d\u0434\ncore -- \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438, \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0438 \u0432\u0441\u0435 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u043e\u0435 \u043e\u0431\u0449\u0435\u0435 \npackages -- \u0422\u0443\u0442 \u044f \u0445\u0440\u0430\u043d\u044e \u043e\u0431\u044a\u0435\u043a\u0442\u044b \u0434\u043b\u044f \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0439 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043a\u0430\u043a\u0438\u0445-\u0442\u043e \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u043e\u0432, \u0443\u0434\u043e\u0431\u043d\u044b\u0445 \u0434\u0435\u043a\u043e\u0440\u0430\u0442\u043e\u0440\u043e\u0432\nservices -- \u041a\u043b\u0430\u0441\u0441\u044b \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u043a\u0430\u043a\u0438\u043c\u0438-\u0442\u043e \u0432\u043d\u0435\u0448\u043d\u0438\u043c\u0438 \u0441\u0435\u0440\u0432\u0438\u0441\u0430\u043c\u0438. \u0422\u0443\u0442 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043d\u0443\u0436\u043d\u0430 \u043f\u0430\u0433\u0438\u043d\u0430\u0446\u0438\u044f, \u0445\u0438\u0442\u0440\u0430\u044f \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u044f \u0438 \u0442\u043e\u043c\u0443 \u043f\u043e\u0434\u043e\u0431\u043d\u043e\u0435\n__main__ -- \u0422\u0443\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u043a\u043e\u0434, \u043a\u043e\u0433\u0434\u0430 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043a\u0430\u043a cli\n__init__ -- \u0422\u0443\u0442 \u0445\u0440\u0430\u043d\u0438\u0442\u0441\u044f \u0441\u043f\u0438\u0441\u043e\u043a \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b \u0434\u043b\u044f \u0438\u043c\u043f\u043e\u0440\u0442\u0430 \u0438\u0437 \u043a\u043e\u0440\u043d\u044f `from basic_sdk import some` \u0438 \u0431\u044b\u0432\u0430\u0435\u0442 \u0438\u043d\u043e\u0433\u0434\u0430 \u0437\u0434\u0435\u0441\u044c \u043d\u0443\u0436\u043d\u043e \u0438\u043c\u043f\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0447\u0442\u043e-\u0442\u043e, \u0447\u0442\u043e\u0431\u044b \u043e\u0431\u044a\u0435\u043a\u0442\u044b \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u043b\u0438\u0441\u044c \u043f\u0440\u0438 \u0441\u0442\u0430\u0440\u0442\u0435\n\n\n\u0414\u043b\u044f \u043f\u0443\u0448\u0430 \u0432 pypi \u043d\u0443\u0436\u043d\u043e \u043f\u0440\u043e\u043f\u0438\u0441\u0430\u0442\u044c `POETRY_PYPI_TOKEN_PYPI` \u0432 .env \u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c `make push`\n\n\u0427\u0442\u043e \u0431\u0443\u0434\u0435\u0442:\n- \u041f\u0440\u043e\u0439\u0434\u0443\u0442 \u0442\u0435\u0441\u0442\u044b\n- \u0421\u0434\u0435\u043b\u0430\u0435\u0442\u0441\u044f `poetry lock`\n- \u0418 \u043f\u0440\u043e\u0439\u0434\u0435\u0442 \u043b\u0438\u043d\u0442\u0435\u0440\u044b\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "",
"version": "0.0.2",
"project_urls": {
"Homepage": "https://github.com/p141592/basic_sdk",
"Repository": "https://github.com/p141592/basic_sdk"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "b29e9f60b0933afdb36fa0ecf099963ba07ec0955b14e7b399a7c113e4f61005",
"md5": "6ac6c0d86ba71565dcfa6770bc967b9b",
"sha256": "c3251d471d1f85056f89207d63385ba20dc671c8dcdc9b3031e4a2048d50c623"
},
"downloads": -1,
"filename": "example_sdk-0.0.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "6ac6c0d86ba71565dcfa6770bc967b9b",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.12,<4.0",
"size": 4708,
"upload_time": "2023-12-02T20:31:33",
"upload_time_iso_8601": "2023-12-02T20:31:33.143005Z",
"url": "https://files.pythonhosted.org/packages/b2/9e/9f60b0933afdb36fa0ecf099963ba07ec0955b14e7b399a7c113e4f61005/example_sdk-0.0.2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "b30808a355bee713a939b6949f0e15cc23dacbdaa4eaf8379c736993d0f8663a",
"md5": "b86b92b4ad74e07a2fd05e2064e2b6eb",
"sha256": "4ccd3e5286447e00c46b7b7eb93c989422a93685e5ef4b52cb36bf6152760137"
},
"downloads": -1,
"filename": "example_sdk-0.0.2.tar.gz",
"has_sig": false,
"md5_digest": "b86b92b4ad74e07a2fd05e2064e2b6eb",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.12,<4.0",
"size": 3007,
"upload_time": "2023-12-02T20:31:34",
"upload_time_iso_8601": "2023-12-02T20:31:34.697243Z",
"url": "https://files.pythonhosted.org/packages/b3/08/08a355bee713a939b6949f0e15cc23dacbdaa4eaf8379c736993d0f8663a/example_sdk-0.0.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-12-02 20:31:34",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "p141592",
"github_project": "basic_sdk",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "example_sdk"
}