Changes

1,786 bytes added ,  23:53, 21 May 2012
Created page with "==Description== Quilt is a chat system designed for mesh networks. It was written in python and uses zeromq as a way to pass data between nodes. Each node connects to other no..."
==Description==
Quilt is a chat system designed for mesh networks. It was written in python and uses zeromq as a way to pass data between nodes. Each node connects to other nodes and allows a user to chat. The end goal is to have a resilient chat network that auto discovers nodes on a mesh network.

==Protocol==
The Quilt protocol is a simple text based protocol over zeromq. zeromq can send multi-part messages and quilt takes advantage of that as a separate between different sections of a message.
Current protocol:
* join -- [routing, destination, "join," user, channel]
* part -- [routing, destination, "part", user, channel]
* message -- [routing, destination, "message", user, channel, message]
* ping [routing, destination, "ping", server]
* pong [routing, destination, "pong", server]
* server_connect [routing, destination, "server_connect", our_address, our_port]

==Project Setup==
The project has 2 main folders and several other sub folders.
* tests
** Unit tests for Quilt are located here

* quilt
** This folder holds the source code for quilt it has 1 sub folder
** __init__.py stores the core quilt code for threading and running the server
** protocol.py holds the protocol implementation
** models
*** Models holds classes for storing data in a way that will be accessible beyond the QuiltProtocol object in protocol.py

==Dependencies==
===Core===
*pyzmq-static
===Unit tests===
*nose

==TODO==
The current todo list is as follows:
* Rewrite the routing implementation to be much smarter
* Hook the avahi node discovery code into the core system
* Improved UI
* rewrite documentation

==Core contributors==
*[https://github.com/rossdylan Ross Delinger]
*[https://github.com/WillDignazio Will Dignazio]

==Links==
* [https://github.com/FOSSRIT/quilt Quilt Github]
3

edits