Skip to content

A work-in-progress Python implementation of the SimpleX Chat Protocol.

License

Notifications You must be signed in to change notification settings

undefdev/simplexchatpy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SimpleX Chat Protocol Library (Sketch)

This library provides a preliminary Python implementation of the SimpleX Chat Protocol, designed for experimentation and learning. The goal is to offer developers an easy-to-read and interactive framework to understand the protocol's mechanics.

Project Goal

The primary purpose of this library is to:

  • Provide a clear and concise representation of the SimpleX Chat Protocol.
  • Allow developers to experiment with the protocol's functionalities in a python.
  • Serve as an educational tool for those interested in the SimpleX Chat Protocol.

Current Status

The library is currently in its early stages and serves as a sketch of the protocol's core functionalities. It is not intended to be a secure or production-ready implementation.

Features

  • Encode and decode messages based on the SimpleX Chat Protocol.
  • Manage user profiles, including setting, updating, and deleting profiles.
  • Utility functions for encoding, decoding, and validating messages.
  • Mock message and profile stores for simulation and experimentation.

Getting Started

To experiment with the library, you can clone the repository and import the relevant modules in your Python environment. Here's a basic example:

from chat import SimplexChat
from models import MessageContent, MessageContainer

# Initialize the chat instance
chat = SimplexChat()

# Set a profile
chat.set_profile(display_name="Bob", full_name="Robert Paulson")

# Create a message content
message_content = MessageContent(type="text", content="My name is Bob.")

# Create a message container with the message content
message_container = MessageContainer(content=message_content)

# Send the message
chat.send_message(message_container)

# Receive a message
received_message = chat.receive_message()
print(received_message)

Please note that this is a mock implementation and doesn't send/receive messages over a network.

License

This project is licensed under the Apache License 2.0 - see the LICENSE file for details.

About

A work-in-progress Python implementation of the SimpleX Chat Protocol.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages