💾 Archived View for satch.xyz › misfin captured on 2024-12-17 at 09:39:47. Gemini links have been rewritten to link to archived content

View Raw

More Information

⬅️ Previous capture (2024-08-31)

🚧 View Differences

-=-=-=-=-=-=-

Misfin: a smallnet messaging protocol

Misfin is a lightweight messaging protocol, similar to SMTP or WhatsApp. It uses mandatory TLS and the Gemini text format.

The active version of Misfin is called Misfin(C). The best place to talk about implementing misfin is the ##misfin channel on libera.chat

I (satch) am committed to keeping this page up-to-date, accurate and comprehensive. Please contact me at mail@satch.xyz with any corrections. This page was copied in large part from mk270's page.

Misfin(A), Misfin(B), Proposed Misfin(C)

Misfin(A) and Misfin(B) are two version of Misfin, created by Lem, the originator of Misfin, who is currently absent.

There is a community proposal for Misfin(C), negotiated between implementers via IRC. This is still in draft form. Misfin(C) is deliberately incompatible with Misfin(B). This means that conformant Misfin(B) servers will continue to enforce Misfin(B)'s stricter message length limits.

Misfin(C) is in no sense endorsed by Lem, the Misfin maintainer.

Links

Compilation of notes for implementers

Misfin(C)

Current Misfin(C) proposal, "9th draft"

Informal Misfin(C) proposal with reasoning for changes

Minutes for IRC meeting on 2023-12-31

Misfin(B)

Official Misfin site (by Lem who is absent)

Misfin(B) spec

Misfin(B) spec (local mirror here)

Misfin in general

Misfin interoperability report

Misfin discussions on BBS

Implementations

Clients

Generally, clients allow one to send and sometimes read or store misfin messages.

Skylab

Skylab uses a Gemini frontend. It is a CGI program in Go.

skyjake's Lagrange (versions 1.18 and later)

Lagrange is a smallweb browser which handles misin:// links and allows sending messages but not reading them.

cipres' misfin

This is a Gemini frontend for cipres' server written in Python.

and gemalaya browser

clseibold's misfinmail

alexlehm's misfin-shell

No Active development (contact me if my categorization here is wrong):

misfin-submit

Reference implementation

Servers

clseibold's misfin-server in Go

cipres' server in Python

Estampa

alexlehm's misfin server in Java/Vert.x

vigrey's ratatoskr

No Active development:

reference implementation

Libraries

gemmail-python library by clseibold

clseibold's gembox library in Go

clseibold's gemmail library in Go

clseibold's misfin_client library in Go

No Active development:

Dory, a misfin library in Rust by jeang3nie

Issues

(This list isn't necessarily up-to-date)

What Misfin is not

There are related protocols for dealing with these two issues:

GMAP

LATSSIAM