Skip to content

arborchat/yggdrasil

Repository files navigation

Yggdrasil

This is an arbor chat client for the proof-of-concept protocol.

You can find information about the Arbor project here

Status

Yggdrasil can connect to an arbor server, display recent messages, and reply to any message that it has recieved. It's not particularly elegant right now, but we hope to change that.

Dependencies

Yggdrasil's Dependencies are all vendored with the exception of the C standard library. Yggdrasil is developed against MUSL Libc, so the makefile tries to use that by default. To build Yggdrasil, you'll either need to install the MUSL GCC wrapper or change the value of CC in the makefile to CC=gcc.

Notes on json-parser

This JSON-parsing library was chosen because of its impressively good results at handling strange JSON objects in this evaluation of JSON parsers.

It is included in this repository as a git subtree.

You can find the canonical repo here.

Notes on json-builder

This JSON-serializng library was chosen because it played so nicely with the parser above.

It is included in this repository as a git subtree.

You can find the canonical repo here.

Notes on c_hashmap

This is a simple C implementation of a generic hashmap data structure. I've used it for other projects and it seems good enough for my needs.

It is included in this repository as a git subtree.

You can find the canonical repo here.

Notes on CuTest

This C test framework was chosen for simplicity. I have vendored it without a subtree or submodule because the original source is not managed with git.

You can find the canonical website for CuTest here.

Build

Use make to build the ygg executable. ygg connects to an arbor server on localhost:7777. This is currently hard-coded.

Test

Run make test to build and run the tests.

Use

If you have arbor running locally, just type ./ygg.

If you want to connect to a remote server, ./ygg <IPv4_ADDR> <PORT>.

About

[legacy] C client for the Arbor chat protocol

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published