hn.today

Show HN: Apron Chat Protocol

apron.chat61 points4 comments
Screenshot of Show HN: Apron Chat Protocol

Apron is a lightweight, open protocol for self-hosted chat, designed to make it easy to build a working server without adopting a large, centralized platform. It sends JSON over transports such as WebSockets and keeps the required core small; rooms, threads, direct messages, bots, replies, mentions, reactions, typing indicators, and presence are added as capabilities. Implementations can support features incrementally, with fallbacks when a server or client lacks a capability. A minimal server can fit in roughly 100 lines, while a fuller reference server supports the complete feature set.

The project demonstrates the protocol through a public server and web client, with examples ranging from team collaboration and private family rooms to a support desk where bots handle ticket threads. It provides implementations in Go, TypeScript, Python, and JavaScript, plus web, macOS, and terminal clients and a bot example. Developers can consult a JSON Schema, test fixtures, and agent-oriented documentation, or authenticate and post messages with only a few JSON frames. The central case for Apron is that useful chat does not require a complicated standard or a single vendor’s service: developers can host their own server and build only the functionality they need. The protocol is CC0-licensed, and its implementations use the MIT license.

Read on apron.chat4 comments on Hacker News

Summary generated by AI from the linked article. hn.today is not affiliated with Hacker News or Y Combinator.

More in Programming

Ggml v1.0.0

Ggml v1.0.0

ggml 1.0.0 removes deprecated public APIs and legacy DIAG_MASK operations, while adding configurable YaRN truncation and FP8 support. It also improves backend performance with quantized matrix multiplication, fused MoE operations, and new attention and scheduling paths. (github.com)

The daily digest

Today's best Hacker News stories, summarized and screenshotted, one email a day.