No description
  • Scheme 87.4%
  • Tree-sitter Query 9.6%
  • Makefile 2.6%
  • Shell 0.4%
Find a file
kuyuhi 0e4851a889
😈😈😈
2026-10-26 23:54:49 -05:00
bin XEP-0114 Jabber Component Protocol (jabber:component:accept) 2026-10-24 20:35:13 -05:00
mod 😈😈😈 2026-10-26 23:54:49 -05:00
script Negotiate SCRAM-SHA-1 on client streams 2026-10-23 12:34:18 -05:00
test STREAM MANAGEMENT (sans resumption) (from undertale !?!??!?!) 2026-10-26 22:34:57 -05:00
.gitignore Alright, let's do this one last time 2026-10-21 16:33:48 -05:00
LICENSE Alright, let's do this one last time 2026-10-21 16:33:48 -05:00
Makefile XEP-0114 Jabber Component Protocol (jabber:component:accept) 2026-10-24 20:35:13 -05:00
pee.doap 😈😈😈 2026-10-26 23:54:49 -05:00
README.md Concatenate all string children in sxml/text, and only echo messages with bodies in component.scm 2026-10-25 00:58:22 -05:00

Pee

Pee is an XMPP library written in Guile Scheme.

The end-goal is to support clients, components (XEP-0114 and XEP-0225), and servers alike, but the exact feature-set is on an as-needed basis. Initially, this means clients are the priority.

The test/ directory demonstrates usage for many individual procedures, while the mod/pee/bin/ directory contains complete reference programs.

Wondering which specifications the library supports, or plans to support? Check out pee.doap for the complete list, as well as various other project metadata.

Build, Run, and Test

The Makefile includes everything to build, install, uninstall, run, and test the project.

Dependencies:

  • Guile >=3.0.11
  • guile-gnutls

To just build the project:

$ make

To run any of the example programs (i.e. bin/echo):

$ make && make echo

To install:

$ make && make install PREFIX=/usr/local

To run the test suites:

$ make && make test

Licensing

Everything in this repository has been relinquished to the public domain. The preferred license is the TEZUKA license (see: LICENSE), but CC0, WTFPL, Unlicense, 0BSD, or equivalent public domain licenses may be used instead.