diff --git a/README.md b/README.md index b67aee8..2ce4776 100644 --- a/README.md +++ b/README.md @@ -4,4 +4,10 @@ A Python implementation of the BitChat decentralized, peer-to-peer, encrypted ch This project is a rewrite of the original Rust-based `bitchat-terminal`. -pip install bleak>=0.22.3 cryptography>=44.0.0 lz4>=4.3.3 aioconsole>=0.8.1 pybloom-live>=4.0.0 \ No newline at end of file +## Installation + +### Using uvx +```bash +uvx --from git+https://github.com/jflaflamme/bitchat-python bitchat-python +``` + diff --git a/bitchat.py b/bitchat.py index dc9a061..1b84f8b 100644 --- a/bitchat.py +++ b/bitchat.py @@ -2034,8 +2034,12 @@ async def main(): client = BitchatClient() await client.run() -if __name__ == "__main__": +def run(): + """Entry point for console scripts""" try: asyncio.run(main()) except KeyboardInterrupt: - print("\n[+] Exiting...") \ No newline at end of file + print("\n[+] Exiting...") + +if __name__ == "__main__": + run() \ No newline at end of file diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..eb2ce5c --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,48 @@ +[build-system] +requires = ["setuptools>=61.0", "wheel"] +build-backend = "setuptools.build_meta" + +[project] +name = "bitchat" +version = "1.0.0" +description = "Bluetooth Low Energy (BLE) mesh chat application" +readme = "README.md" +requires-python = ">=3.8" +license = {text = "MIT"} +authors = [ + {name = "Kağan IŞILDAK"} +] +keywords = ["bluetooth", "ble", "chat", "mesh", "communication"] +classifiers = [ + "Development Status :: 4 - Beta", + "Intended Audience :: End Users/Desktop", + "License :: OSI Approved :: MIT License", + "Programming Language :: Python :: 3", + "Programming Language :: Python :: 3.8", + "Programming Language :: Python :: 3.9", + "Programming Language :: Python :: 3.10", + "Programming Language :: Python :: 3.11", + "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", + "Topic :: Communications :: Chat", + "Topic :: System :: Networking", +] +dependencies = [ + "bleak", + "aioconsole", + "pybloom-live", + "cryptography", + "lz4", +] + +[project.scripts] +bitchat-python = "bitchat:run" + +[tool.setuptools] +py-modules = ["bitchat", "encryption", "compression", "fragmentation", "terminal_ux", "persistence"] + +[project.urls] +Homepage = "https://github.com/kaganisildak/bitchat-python" +Repository = "https://github.com/kaganisildak/bitchat-python" +Issues = "https://github.com/kaganisildak/bitchat-python/issues" +