Stoat logo

Stoat

Open source, user-first chat platform and Discord alternative

Alternative to: discord


About Versions (55)

v0.9.0

2026-01-10

0.9.0 (2026-01-10)

Features

  • add id field to role (#470) (2afea56)
  • add ratelimits to gifbox (1542047)
  • include groups and dms in fetch mutuals (caa8607)
  • include member payload in ServerMemberJoin event (480f210)
  • initial work on tenor gif searching (b0c977b)
  • make message lexer use unowned string (1561481)
  • ready payload field customisation (db57706)
  • require auth for search (b5cd5e3)
  • trending and categories routes (5885e06)
  • voice chats v2 (#414) (d567155)

Bug Fixes

  • add license to revolt-parser (5335124)
  • allow for disabling default features (65fbd36)
  • apple music to use original url instead of metadata url (bfe4018)
  • apply uname fix to january and autumn (8f9015a)
  • ci: publish images under stoatchat and remove docker hub (d65c1a1)
  • correct miniz_oxide in lockfile (#478) (5d27a91)
  • correct shebang for try-tag-and-release (050ba16)
  • correct string_cache in lockfile (#479) (0b178fc)
  • don’t remove timeouts when a member leaves a server (#409) (e635bc2)
  • don’t update the same field while trying to remove it (f4ee35f), closes #392
  • github webhook incorrect payload and formatting (#468) (dc9c82a)
  • implement Serialize to ClientMessage (dea0f67)
  • newly created roles should be ranked the lowest (947eb15)
  • permit empty remove array in edit requests (6ad3da5)
  • preserve order of replies in message (#447) (657a3f0)
  • prevent timing out members which have TimeoutMembers permission (e36fc97)
  • relax settings name regex (3a34159)
  • remove authentication tag bytes from attachment download (32e6600)
  • rename openapi operation ids (6048587), closes #406
  • respond with 201 if no body in requests (#465) (24fedf8)
  • swap to using reqwest for query building (38dd4d1)
  • use trust_cloudflare config value instead of env var (cc7a796)
  • use our own result types instead of tenors types (a92152d)