https://github.com/ikpil/uninetty
UniNetty project - a port of DotNetty, an event-driven asynchronous network application framework
https://github.com/ikpil/uninetty
csharp dotnetty game gamedev netty networking protocols server unity3d
Last synced: 3 months ago
JSON representation
UniNetty project - a port of DotNetty, an event-driven asynchronous network application framework
- Host: GitHub
- URL: https://github.com/ikpil/uninetty
- Owner: ikpil
- License: mit
- Created: 2024-08-17T13:02:58.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-10-28T15:23:27.000Z (about 1 year ago)
- Last Synced: 2025-01-31T02:38:17.752Z (12 months ago)
- Topics: csharp, dotnetty, game, gamedev, netty, networking, protocols, server, unity3d
- Language: C#
- Homepage:
- Size: 1.63 MB
- Stars: 19
- Watchers: 2
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# UniNetty Project
*UniNetty is a port of [Azure/DotNetty](https://github.com/Azure/DotNetty), an asynchronous event-driven network framework designed for developing high-performance, maintainable protocol servers and clients, fully compatible with Unity3D.*
*If you'd like to support the project, we'd appreciate starring(⭐) our repos on Github for more visibility.*
---



[](https://github.com/ikpil/UniNetty)
[](https://github.com/ikpil/UniNetty/commits)
[](https://github.com/ikpil/UniNetty/issues)
[](https://github.com/ikpil/UniNetty/issues)
[](https://openupm.com/packages/com.ikpil.uninetty/)
[](https://github.com/sponsors/ikpil)
---
[](https://github.com/ikpil/UniNettyBoost/actions/workflows/dotnet.yml)
[](https://github.com/ikpil/UniNettyBoost/actions/workflows/codeql.yml)
## 🚀 Features
- **Unity3D Compatibility** : Integrate DotNetty's functionality into Unity projects, simplifying the implementation of networking features.
- **Unified API for various transport types** : blocking and non-blocking socket
- **Flexible Event Model** : Based on a flexible and extensible event model which allows clear separation of concerns
- **Highly Customizable Thread Model** : single thread, one or more thread pools such as SEDA
- **Datagram Socket** : True connectionless datagram socket support
UniNetty is divided into multiple modules, each contained in its own folder:
- [UniNetty.Logging](https://github.com/ikpil/UniNetty/tree/main/Runtime/UniNetty.Logging) : Logging framework used internally by UniNetty
- [UniNetty.Common](https://github.com/ikpil/UniNetty/tree/main/Runtime/UniNetty.Common) : Provides utility functions and common components for asynchronous and concurrent operations.
- [UniNetty.Buffers](https://github.com/ikpil/UniNetty/tree/main/Runtime/UniNetty.Buffers) : Manages efficient memory allocation and deallocation for network data buffers.
- [UniNetty.Transport](https://github.com/ikpil/UniNetty/tree/main/Runtime/UniNetty.Transport) : Implements core TCP and UDP transport functionalities with scalable event loop support.
- [UniNetty.Codecs](https://github.com/ikpil/UniNetty/tree/main/Runtime/UniNetty.Codecs) : Handles encoding and decoding of data across network channels.
- [UniNetty.Codecs.Http](https://github.com/ikpil/UniNetty/tree/main/Runtime/UniNetty.Codecs.Http) : Supports HTTP/1.1 and handles full HTTP request/response lifecycle.
- [UniNetty.Codecs.Mqtt](https://github.com/ikpil/UniNetty/tree/main/Runtime/UniNetty.Codecs.Mqtt) : Implements MQTT protocol for IoT communication with efficient message handling.
- [UniNetty.Codecs.Protobuf](https://github.com/ikpil/UniNetty/tree/main/Runtime/UniNetty.Codecs.Protobuf) : Facilitates Protocol Buffers serialization and deserialization for compact binary communication.
- [UniNetty.Codecs.Redis](https://github.com/ikpil/UniNetty/tree/main/Runtime/UniNetty.Codecs.Redis) : Implements Redis protocol for building Redis-compatible servers or clients.
- [UniNetty.Handlers](https://github.com/ikpil/UniNetty/tree/main/Runtime/UniNetty.Handlers) : Includes handlers for SSL/TLS, WebSocket, and other essential network features.
- [UniNetty.Examples](https://github.com/ikpil/UniNetty/tree/main/Examples) : Examples of usage
- [UniNetty.Editor](https://github.com/ikpil/UniNetty/tree/main/Editor) : Editor
## ⚡ Getting Started
...
## ⚙ How it Works
...
## 📚 Documentation & Links
- UniNetty Links
- [UniNetty/issues](https://github.com/ikpil/UniNetty/issues)
- Official Links
- [DotNetty/issues](https://github.com/Azure/DotNetty/issues)
## 🅾 License
UniNetty is licensed under MIT license, see [LICENSE.txt](https://github.com/ikpil/UniNetty/tree/main/LICENSE) for more information.
## 📹 Demo Video
...