Telodendria

Tel-ə-'den-drē-ə: The terminal aborizations of an axon.

Telodendria is an open source Matrix homeserver implementation written from scratch in ANSI C and designed to be lightweight and simple, yet functional.

Note: Telodendria is under heavy development and is not yet ready for use. Please see the Project Status for information about the project state, and use the links below to help fund development.

If you would like to donate to this project, you can do so with the following links:

If you would like to do a recurring donation larger than what's allowed by LiberaPay, please contact me directly on Matrix at @jordan:bancino.net.

Download

Telodendria is distributed as source tarballs, in true Unix fashion. If you want, you can verify the checksum of your download, and check the signature. To check the signature, you'll need signify, and the signify public key: telodendria-signify.pub.

Version Download Checksum Signature
0.2.1 Telodendria-v0.2.1.tar.gz sha256 signify

See the change log for release notes. If you are looking for older Telodendria versions, you can find them here.

If your operating system has an official package or port of Telodendria, you should prefer to use that instead of manually downloading the source and building it. Consult your operating system's manual for how to install packages, as well as the official repository, to see if a package is available. If your operating system's package or port is too out of date for your tastes, please contact the package's maintainers to notify them, or offer to update the package yourself.

If your operating system does not have a package or port of Telodendria, please consult the porting(7) page for guidelines related to packaging Telodendria for your system.

Documentation

Telodendria's documentation is distributed with the source code as man pages, which contain all of the information on what Telodendria is, what its goals are, how to build the source, configure it, as well as contribute to the project. The man pages are also available online for convenience:

User Documentation:

Man PageDescription
telodendria(8)Daemon command line manual for Telodendria administrators.
telodendria(7)Start here. This page contains the project introduction, and provides information about it, such as its status, how to contact the developers, and what the source code license is.
telodendria-contributing(7)Guide to contributing to the Telodendria project.
telodendria-changelog(7)The change log for the Telodendria project.
telodendria.conf(5)Configuration file for Telodendria.

Developer Documentation:

Man PageDescription
td(8)Telodendria build script and patch generation instructions.
send-patch(8)Submit a patch file to the Telodendria Patches Matrix room
porting(7)Some guidelines for packaging Telodendria for your operating system.
Util(3)Some misc. helper functions that don't need their own headers.
User(3)Convenience functions for working with local users.
Uia(3)User Interactive Authentication API.
TelodendriaConfig(3)Parse the configuration file into a structure.
Str(3)Functions for manipulating and creating strings.
Sha2(3)A simple implementation of the SHA2 hashing functions.
Routes(3)Matrix API endpoint abstractions.
Rand(3)Thread-safe random numbers.
Queue(3)A simple static queue data structure.
Memory(3)Smart memory management.
Matrix(3)Functions for writing Matrix API endpoints.
Log(3)A simple logging framework for logging to files, standard output, or the system log.
Json(3)A fully-featured JSON API.
HttpServer(3)Extremely simple HTTP server.
Http(3)Encode and decode various parts of the HTTP protocol.
HashMap(3)A simple hash map implementation.
Db(3)A minimal flat-file database with object locking and an efficient cache.
Cron(3)Basic periodic job scheduler.
CanonicalJson(3)An extension of JSON that produces the Matrix spec's "canonical" JSON.
Base64(3)A simple base64 encoder/decoder with "unpadded base64" support.
Array(3)A simple dynamic array data structure.

© 2023 Jordan Bancino <@jordan:bancino.net>
Updated on Mon Mar 6 19:51:35 EST 2023.