Popularity
0.8
Growing
Activity
0.0
Declining
12
2
1

Description

This is a top level socket library made to simplify the process of sending and receiving data. With it's own secure serialization system, logging, and event based approach, this library, which requires NO EXTERNAL MODULES, is a must gave for any online game, chat, or anything networking! In addition to the benefits mentioned, it supports SSL, is completely threaded, and so much more!

Programming language: Python
License: MIT License
Tags: Networking     Utilities     Internet    

quick-net alternatives and similar packages

Based on the "Networking" category

Do you think we are missing an alternative of quick-net or a related project?

Add another 'Networking' Package

README

quick-net

Sockets don't have to be a pain

That's the motto this library was built with, and that's exactly what we made! This is a top-level socket library, great for games, chat, or anything networking in general!

How to install

As of now, this repo doesn't have a setup.py (which will be added later), however it's easy enough to make one yourself. But to make it easy, it's also on pip

pip install quick-connect  # pip3 on linux machines.

And please, don't get confused by the installation name, you import it as so:

import quicknet

How to use

quick-connect is event based. That means, you can register handlers for when you receive a certain input. For example, let's say I wanted my client, to print the welcome message from the server. I might do something like this in my client program:

@client.on("WELCOME")
def welcome_msg(message):
    print("SERVER:", message)

The first line, basicly adds the function to the client, so the client can run it when it receives that event from the server. The second line declares the function, which accepts a message (possitional arguemnt) from the server. The last line prints it out. Now, on the server side, how might we invoke this? Well, we have 2 ways, the first way, is to get the client object, and emit that message to it.

joined_client.emit("WELCOME", "Welcome to my awesome game!")

However, let's say you wanted to tell every client, a player joined. Then you can use the broadcast function.

server.broadcast("WELCOME", "Player {name} just joined the party!".format(name="Joe"))

Docs

See the github wiki on this repo for the docs, which has the API, and more details, such as how to communicate to a server using quick-connect, without quick-connect.

Design

flowchart Enough said.

Credits

This was made by Nathan Zilora, also on discord known as Zwack010#5682 This project is registered in the MIT licesnse, so make sure to include the license, if using this project directly.


*Note that all licence references and agreements mentioned in the quick-net README section above are relevant to that project's source code only.