Metadata-Version: 2.1
Name: bedrockpy
Version: 1.0.0
Summary: Minecraft: Bedrock Edition Websocket Server
Home-page: https://github.com/bedrock-ws/bedrockpy/
License: MIT
Keywords: bedrock,minecraft,websocket
Author: Jonas da Silva
Maintainer: Bedrock WS
Maintainer-email: bedrock-ws@proton.me
Requires-Python: >=3.10,<4.0
Classifier: Intended Audience :: Education
Classifier: Intended Audience :: End Users/Desktop
Classifier: License :: OSI Approved :: MIT License
Classifier: Natural Language :: English
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Topic :: Education
Classifier: Topic :: Games/Entertainment
Classifier: Typing :: Typed
Provides-Extra: dev
Provides-Extra: docs
Provides-Extra: fast
Requires-Dist: attrs (>=23.2.0,<24.0.0)
Requires-Dist: convert-case (>=1.1.1,<2.0.0)
Requires-Dist: furo (>=2023.3.27,<2024.0.0) ; extra == "docs"
Requires-Dist: mypy (>=1.2.0,<2.0.0) ; extra == "dev"
Requires-Dist: myst-parser[linkify] (>=1.0.0,<2.0.0) ; extra == "docs"
Requires-Dist: sphinx (>=6.2.1,<7.0.0) ; extra == "docs"
Requires-Dist: sphinx-copybutton (>=0.5.2,<0.6.0) ; extra == "docs"
Requires-Dist: sphinx-design (>=0.4.1,<0.5.0) ; extra == "docs"
Requires-Dist: sphinx-notfound-page (>=0.8.3,<0.9.0) ; extra == "docs"
Requires-Dist: sphinxcontrib-mermaid (>=0.8.1,<0.9.0) ; extra == "docs"
Requires-Dist: sphinxcontrib-video (>=0.1.1,<0.2.0) ; extra == "docs"
Requires-Dist: tox (>=4.5.1,<5.0.0) ; extra == "dev"
Requires-Dist: uvloop (>=0.17.0,<0.18.0) ; extra == "fast"
Requires-Dist: websockets (>=11.0.2,<12.0.0)
Project-URL: Documentation, https://bedrockpy.readthedocs.io/
Project-URL: Repository, https://github.com/bedrock-ws/bedrockpy/
Description-Content-Type: text/markdown

<p align="center">
  <img
    src="https://github.com/bedrock-ws/bedrockpy/blob/main/bedrockpy_3d.png?raw=true"
    width="140vh"
  >
  <h1 align="center">bedrockpy</h1>
  <p align="center">
    Minecraft: Bedrock Edition Websocket Server
  </p>
</p>

<!-- start brief-hook -->

*bedrockpy* lets you create a websocket server that is able to interact
with a player in a Minecraft game. As the name suggests: this project
only works with the "Minecraft: Bedrock Edition".

[![Documentation Status](https://readthedocs.org/projects/bedrockpy/badge/?version=latest&style=flat-square)](https://bedrockpy.readthedocs.io/en/latest/?badge=latest)
[![License](https://img.shields.io/github/license/bedrock-ws/bedrockpy?style=flat-square)](https://github.com/bedrock-ws/bedrockpy/blob/main/LICENSE)
[![PyPI](https://img.shields.io/pypi/v/bedrockpy?style=flat-square)](https://pypi.org/project/bedrockpy)
[![PyPI - Downloads](https://img.shields.io/pypi/dw/bedrockpy?style=flat-square)](https://pypi.org/project/bedrockpy)


## Quick Links

- 📦 [PyPI](https://pypi.org/project/bedrockpy)
- 📖 [Docs](https://bedrockpy.readthedocs.io/)
- 🐍 [Repo](https://github.com/bedrock-ws/bedrockpy/)


## "Show me some Code"

> Code says more than a thousand words.

```python
from bedrock.server import Server

app = Server()

@app.server_event
async def ready(ctx):
    print(f"Ready @ {ctx.host}:{ctx.port}!")

@app.game_event
async def block_broken(ctx):
    await ctx.server.run(f"title @a title Who destroyed {ctx.id}?!")

app.start("localhost", 6464)
```

*Please refer to the "Introduction" section in the documentation in
order to get started with bedrockpy.*


## Requirements

- [Python](https://www.python.org) 3.10 or greater
- [pip](https://pip.pypa.io/en/stable/) (usually comes with Python)
- [Minecraft](https://www.minecraft.net/en-us) (**not** Java Edition) (any version)[^1]

[^1]: This only applies to the client connecting to the server.

<!-- end brief-hook -->


## Installation

<!-- start installation-hook -->

You can install/upgrade *bedrockpy* with the following command:

```console
pip install -U bedrockpy
```

If you are not using Windows, you may as well enable
[uvloop](https://github.com/MagicStack/uvloop) which speeds up
the server:

```console
pip install -U "bedrockpy[fast]"
```

<!-- end installation-hook -->

---

NOT AN OFFICIAL MINECRAFT PRODUCT. NOT APPROVED BY OR ASSOCIATED WITH
MOJANG.

