{"id":21153094,"url":"https://github.com/markuspeitl/python_console_package","last_synced_at":"2025-07-18T00:09:35.893Z","repository":{"id":219854179,"uuid":"369247243","full_name":"markuspeitl/python_console_package","owner":"markuspeitl","description":"This is a small template for building, distributing and packaging a python console application.","archived":false,"fork":false,"pushed_at":"2021-12-01T17:48:25.000Z","size":16,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-06-12T21:54:43.351Z","etag":null,"topics":["console-application","entrypoints","packaging","pypi","python-console","setuptools"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/markuspeitl.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2021-05-20T15:02:58.000Z","updated_at":"2021-12-01T17:48:28.000Z","dependencies_parsed_at":"2024-01-30T02:41:03.245Z","dependency_job_id":"23742dd0-3751-412f-b049-d65d2c1b01fa","html_url":"https://github.com/markuspeitl/python_console_package","commit_stats":null,"previous_names":["markuspeitl/python_console_package"],"tags_count":1,"template":true,"template_full_name":null,"purl":"pkg:github/markuspeitl/python_console_package","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/markuspeitl%2Fpython_console_package","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/markuspeitl%2Fpython_console_package/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/markuspeitl%2Fpython_console_package/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/markuspeitl%2Fpython_console_package/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/markuspeitl","download_url":"https://codeload.github.com/markuspeitl/python_console_package/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/markuspeitl%2Fpython_console_package/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265683632,"owners_count":23810869,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["console-application","entrypoints","packaging","pypi","python-console","setuptools"],"created_at":"2024-11-20T10:48:40.465Z","updated_at":"2025-07-18T00:09:35.866Z","avatar_url":"https://github.com/markuspeitl.png","language":"Python","funding_links":["https://www.paypal.com/donate?hosted_button_id=BSFX8LCPHW2AE"],"categories":[],"sub_categories":[],"readme":"# Python console package\n\nThis is a small template for building, distributing and packaging a python console application.\n\n**TODOS:**\n\n- Do this\n- Do that\n\n## Installation\n\nCan be easily installed from pypi with pip3.\n\n```bash\npip3 install python_console_package\n```\n\n## Running from source\n\nYou can also alway clone the repo from [GitHub](https://github.com/MarkusPeitl/python_console_package) and run with python.\n\n```bash\npython3 launcher.py \"this/is/my/source/path\"\n```\n\nor by\n\n```bash\npython3 entrypoint.py \"this/is/my/source/path\"\n```\n\nIf installed through pypi then executing the script name `python_console_package` essentially runs something like `python3 python_console_package/entrypoint.py` (this is specified through `entry_points` in **setup.py**),which is used in the further usage examples.\n\n## FILES and their functions\n\n### build.py\n\n```bash\npython3 build.py\n```\n\nto build and package the application using setuptools to the **dist** directory.  \n\n### entrypoint.py\n\n```bash\npython3 entrypoint.py\n```\n\nthis is a launcher for the main script, can be used interchangably with python_console_package/entrypoint.py.  \n\n### install-dev.py\n\n```bash\npython3 install-dev.py\n```\n\nuse the pip3 installer to install this project directory to the system. (Immediatly reflects the changes done to the scripts).  \n\n### install.py\n\n```bash\npython3 install.py\n```\n\nBuild the application and install the resulting package -\u003e the installation is the same as if you would install the package from pypi.  \n\n### LICENCE.txt\n\nThe License of your project, do your research and choose your License with care.  \n(Here it is APACHE 2.0)  \n\n### MANIFEST.in\n\nSpecifies additional non-python files that should be included into the distributed package.  \n\n### publish.py\n\n```bash\npython3 publish.py\n```\n\nBuild the application and upload to pypi using twine (make sure everything is working before as you can not replace a version once it is online).  \nAfter you have published the package, tag your package version and push to your git repository.\n\n1. Commit your changes `git commit -am \"your message\"`\n2. Push your changes `git push`\n3. Create a version tag in your repository `git tag 1.0.0`\n4. Push the tag to your repository `git push --tags`\n\n### README.md\n\nMain description and documentation of your project.  \n\n### RELEASE.md\n\nA markdown file containing info about the release versions and their changes.  \n\n### setup.py\n\nThe setuptools configuration, which contains all packaging information and some installation information for your project.\nMake sure to replace the info before packaging your application.\nContains:\n\n- Meta information like: author, version, classifiers, url, description\n- Importent information about the structure and files of your package for installation: modules, entrypoints, name, dependencies\n\n## Using the application\n\n```bash\npython_console_package --setup\n```\n\nIf you want to provide a setup function to your users you can implement a function call when this options is specified.\n\n```bash\npython_console_package --version\n```\n\nPrint out the version information of your package\n\n```bash\npython_console_package \"test/path/source\"\n```\n\nCall application with a positional text argument.\n\n```bash\npython_console_package \"test/path/source\" --option \"my optional argument text\"\n```\n\nCall application with a optional text argument.\n\n```bash\npython_console_package \"test/path/source\" --multiply 1 2 3 8 96\n```\n\nCall application with an optional argument list.\n\n```bash\npython_console_package \"test/path/source\" --printm\n```\n\nCall the application with an optional boolean option.\n\n### If you like the project consider dropping me a coffee\n\n[![paypal](https://www.paypalobjects.com/en_US/i/btn/btn_donate_LG.gif)](https://www.paypal.com/donate?hosted_button_id=BSFX8LCPHW2AE)\n  \n\u003cbr\u003e  \n\u003cbr\u003e","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarkuspeitl%2Fpython_console_package","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmarkuspeitl%2Fpython_console_package","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarkuspeitl%2Fpython_console_package/lists"}