r/stoatchat • • Aug 21 '26

Article​ A Guide To Stoat's Advanced Message Formatting Capabilities

25 Upvotes

Stoat has rather advanced message formatting. Need proof? Check this out:

Advanced Stoat message markup.

There is no image attached to that message. That is something called KaTeX, but before we get ahead of ourselves, let's take a moment to cover the basics. If you're just looking for a quick overview, you should check out the 'Formatting your Messages' page on our support site, but if you're looking for more comprehensive coverage, read on.

Markdown

Developers structure content on the web with a language called HTML (Hypertext Markup Language). For example, here is the structure for a link: <a href="https://stoat.chat">Stoat</a>. That is then handled by your device and looks like this: Stoat.

Markdown is a simpler way to author content. It has been around since 2004 and is used on Stoat, here on Reddit, and in a multitude of other places. It simplifies that complex HTML into something you actually want to write. You're likely already familiar with the basics, but let's take a look. Feel welcome to copy and paste bits into Stoat so you can get a hang of things. Your 'Shared Notes' section is a good place to do this.

Links

Stoat automatically detects links you write, but if you don't want them to get an embed, you can wrap the link in angle brackets (<, >), like so: https://example.com

If you want custom text to be a link, you can use this syntax: [Text to appear](https://example.com). That'll output 'Text to appear'.

Italic, Bold, and Strikethrough

You can make text italic (slanted) by wrapping it with an asterisk (*) on either side. Like this: *italic text*, which outputs: 'italic text'. You can also use a single underscore instead of an asterisk: _italic text_.

You can make text bold by wrapping it with two asterisks on either side. Like this: **bold text**, which outputs: 'bold text'. You can also use two underscores on either side: __bold text__.

To have text which is both bold and italic, you can combine those wrapping characters. You can write ***bold italic text***, ___bold italic text___, **_bold italic text_**, or _**bold italic text**_, or *__bold italic text__*, or __*bold italic text*__. They all do the exact same, but you can write it any of those ways.

To write strikethrough text, which is useful for indicating a retraction, you wrap the text in one or two tildes (~), like so: ~Pluto is a planet~, which outputs '~Pluto is a planet~'. You can also mix it with bold, italic, and other formatting, but I don't think I need to run you through every possible permutation.

Headings

To structure text, you can use headings. They make text larger and expose text hierarchy to assistive technologies. You write headings by prefixing them with a number of octothorpes (#) representing the heading level. There are a maximum of six heading levels.

  1. Heading level one: # Heading
  2. Heading level two: ## Heading
  3. Heading level three: ### Heading
  4. Heading level four: #### Heading
  5. Heading level five: ##### Heading
  6. Heading level six: ###### Heading

(you can also close these headings by ending them with the same number of octothorpes, like so: ### Heading ###*, but you don't need to, and nobody ever really does)*

You can also write a level one heading by having a line underneath it with any number of equals signs (=):

Heading
===

You can write a level two heading by having any number of hyphens (-) on the line underneath the heading text:

Heading
---

Blockquotes

You can quote text by placing it in a blockquote. They look something like this:

Wow, it is a blockquote. How wonderful is this?

You do this by placing a greater-than sign (>) before the line you want to quote. You can quote multiple by starting multiple sequential lines of text with the greater-than sign.

> Quoted text.
> More quoted text.

You can also use other formatting within a block quote, like so: > **Bold quote text**. You can even nest layers of block quotes by starting a block quote within a block quote.

Lists

Lists are wonderfully useful. There are two main types. Ordered lists, which have numbers, and unordered lists, which just have bullet points.

Ordered lists are written by starting the line with a number and then a full stop, like this:

1. List item one.
2. List item two.
3. Believe it or not, but this is list item three.

On Stoat, you can write unordered lists by starting the line with either an asterisk or a hyphen. They both work the exact same. Here is an example:

- List item.
- Another list item.
- Yet another list item

* List item.
* Another list item.
* Yet another list item

Code

If you have content you wish to include in a message that needs to be formatted exactly as is, you can designate it as code.

If you only have one line of text, you can just wrap it in backticks () like this: \code text. Then it'll render like socode text`.

If your content stretches across multiple lines, you can wrap it with triple backticks. Further, you can start the first line of backticks with a note of what format the content is, so Stoat can provide syntax highlighting. For example, you can write 'html', or 'text', or 'markdown'. Here is an example of a full code block:

```markdown

- List item.
- Another list item.

**Bold text.**
```

Tables

You can create tables in messages with lots of pipe and hyphen characters. Unfortunately, it isn't very nice to write and can be a real pain I recommend using a tool to make it easier, like the one on TablesGenerator.com.

| Ore                 | Biome     | Most Found | Common Up To | Rare On Layers | None At/Above |
| :------------------ | :-------- | :--------- | :----------- | :------------- | :------------ |
| **Coal**            | Any       | 5-52       | 124          | 125-127        | 128           |
| **Iron**            | Any       | 5-54       | 61           | 62-63          | 64            |
| **Gold (Any)**      | Any       | 5-29       | 29           | 31-33          | 34            |
| **Gold (Badlands)** | Badlands  | 5-29       | 76           | 77-79          | 80            |
| **Redstone**        | Any       | 5-12       | 12           | 13-15          | 16            |
| **Lapis Lazuli**    | Any       | 13-17      | 23           | 31-33          | 34            |
| **Diamond**         | Any       | 5-12       | 12           | 13-15          | 16            |
| **Emerald**         | Mountains | 5-29       | 29           | 30-32          | 33            |

The output looks like this:

Horizontal Rule

If you want a big line to cut across your message – such as to indicate the change of a topic – you can use horizontal rules. They're written by placing three hyphens together: `---`.

Spoilers

To stop exposing people to the fact that Aquaman drowns in Endgame, you can spoiler content so that a user must click on it to expose it. This is done by wrapping the text you wish to spoiler in two pipe characters (`||`). It will look something like this.

Timestamps

You can write timestamps in this format: <t:1787315340:f>. That'll appear something like this in chat: '21 August 2026 at 8:29 pm'. It is extremely useful, as you can display times which will adapt to people's time zones or which will count down as the time approaches. They are hard to write without the assistance of a tool, however.

If you just want something simple to copy-and-paste from, you can use this little timestamp generator tool I put together: https://tools.vale.rocks/timestamp-generator.

Footnotes

As an only semi-intended side-effect of the system Stoat uses for handling markdown, you can write footnotes in your Stoat messages. This is done using the below markdown:

Vale is a member of the Stoat team.[^1]
[^1]: Their real name is Declan Chidlow.

Which outputs looking like this:

KaTeX

If you've ever tried to type maths on a computer, you've likely run into trouble. You can get by with a simple '2 + 2 = 4', but what about fractions, or square roots, or matrices? They're a tad trickier to present nicely. This is where TeX comes in. It was made in the 1970s as a way to format mathematical notation on a computer. LaTeX is an improved version, first released in the mid-1980s, and from that came KaTeX, which is a library that Stoat uses to convert LaTeX into formatted output.

Typical syntax for writing LaTeX in markdown is to wrap in a single dollar sign for inline maths and two dollar signs for block maths. However, on Stoat, you must always use two dollar signs to wrap LaTeX, like so: $$e^{i\pi} + 1 = 0$$. This avoids false positives when people use dollar signs in messages.

Wondering about the demo from the start of this article? Here is the LaTeX for that:

$$\Huge \begin{matrix} & & & \color{#00FFFF}{\blacktriangle} & & & \\ & & \color{#00BFFF}{\nwarrow} & \color{#1E90FF}{\infty} & \color{#00BFFF}{\nearrow} & & \\ & \color{#4169E1}{\leftarrow} & \color{#0000FF}{\otimes} & \color{#4B0082}{\Psi} & \color{#0000FF}{\otimes} & \color{#4169E1}{\rightarrow} & \\ \color{#8A2BE2}{\blacktriangleleft} & \color{#9400D3}{\infty} & \color{#9932CC}{\Phi} & \color{#FF00FF}{\mathbf{\Omega}} & \color{#9932CC}{\Phi} & \color{#9400D3}{\infty} & \color{#8A2BE2}{\blacktriangleright} \\ & \color{#C71585}{\leftarrow} & \color{#D02090}{\otimes} & \color{#DB7093}{\nabla} & \color{#D02090}{\otimes} & \color{#C71585}{\rightarrow} & \\ & & \color{#FF1493}{\swarrow} & \color{#FF69B4}{\infty} & \color{#FF1493}{\searrow} & & \\ & & & \color{#FF0000}{\blacktriangledown} & & & \end{matrix}$$

That is quite the complex LaTeX concoction, but you should be able to comprehend it by reading it through. You can get a full idea of what KaTeX supports here: https://katex.org/docs/supported.html

Keep in mind that not every server owner will appreciate your zany formatting antics, but here are some more cool things you can do:

I'm going on a roller-coaster, '$$\textsf{\raisebox{0pt}{w}\raisebox{1pt}{o}\raisebox{2pt}{o}\raisebox{2pt}{o}\raisebox{2pt}{o}\raisebox{1pt}{o}\raisebox{0pt}{o}\raisebox{-1pt}{o}\raisebox{-2pt}{a}\raisebox{-2pt}{h}\raisebox{-2pt}{!}}$$'
$$
e^x = \sum_{n=0}^{\infty} \frac{x^n}{n!} = 1 + x + \frac{x^2}{2!} + \frac{x^3}{3!} + \cdots
$$

Wrapping Up

I hope this guide is helpful. I know that it can all be a bit overwhelming and confusing if you're new to writing Markdown. You can always try using your Saved Notes as a bit of a sandbox for testing if you want to experiment with how it works and functions on Stoat.


r/stoatchat • • Aug 19 '26

Article​ Stoat FAQ

31 Upvotes

Hey Stoaters. It has been six months since the last post addressing frequently asked questions, so it felt like time for another.

1. Do you have video chat, screen-sharing, and voice chat?

Yes! They're live and available to all users on Stoat For Web, Stoat For Desktop, and Stoat For Android. You can read more about it here: https://stoat.chat/release-notes/93eb1f4ec77444ca9fb13617e0e6c0b1

We're working on bringing more options to the streaming features.

2. Is Stoat down? I can't access it.

Probably not. You can check at https://stoatstatus.com for real-time status updates.

If the service appears functional on the status page but you're encountering a problem, such as a blank grey screen, your antivirus, telecommunications provider, or internet service provider might have us incorrectly flagged. This is an error on their part and out of our control, though we try to appeal when this occurs.

If you encounter a block, try switching networks (such as to mobile data from Wi-Fi, or vice versa), whitelisting us, or using another device to access the service until your chosen provider relaxes their block.

3. Is Stoat open-source?

Yes, most of Stoat's code is licensed under the GNU Affero General Public License (AGPL) v3. You can check the individual licences in the code repositories on GitHub: https://github.com/stoatchat

4. Does Stoat have federation?

Though you can self-host Stoat, the platform is not currently federated. For some further info on the matter, you can consult Does Stoat have federation?.

5. Can I make a bot or client?

Absolutely! We'd love for you to build on or around the platform. There are many libraries developed both officially and by the community that you can use, and there are servers on-platform for discussing development. You can find everything you'd need to get started at https://developers.stoat.chat

6. Can I contribute?

Certainly. We've got open roles here: https://outline.stoatinternal.com/s/454dd0eb-44b5-41f7-b1d1-b6accec577a0

You can see the problems impacting scale here: https://outline.stoatinternal.com/s/4117b2be-901d-4463-a204-bd8c756b2122

You can also support the project financially. Stoat has a Ko-Fi page which is used to cover operational costs. Everyone's support here has gone a long way to helping the platform quickly scale without being too stressed about financials. If you send £3 or more to the platform, send an email to support@stoat.chat with some proof so we can give you a supporter badge on your profile.

7. Is a subscription planned?

Yes, a subscription is planned. Exactly what form this will take is not entirely defined, but the intent is not to paywall things unnecessarily and to focus on ensuring the service can be operated sustainably. This means paywalling things like higher-quality video streaming and keeping cheap-to-provide things (like custom banners, animated profile pictures, and platform-wide custom emojis) free.

Currently contributors and team members aren't paid (though some do have open support pages if you wish to contribute to them directly). A subscription would assist in making sure that people are reimbursed for their work and can dedicate more time to the platform.

Profiteering gluttons we are not!

8. What are your plans for age verification?

Stoat must comply with the law as applicable, so some form of age verification will be implemented in relevant jurisdictions as necessary. Regardless of our sentiment on age verification legislation, from a legal perspective we cannot just refuse to comply.

We have no plans for an overzealous blanket requirement and only intend to implement it where and as legally required. There is ongoing discussion about how to ensure any verification we implement respects privacy, handles data responsibly, and does the right thing by our users.

It is likely to be externalised to a third-party due to the great deal of complexity intrinsic to handling such sensitive data. We'll have more to share in time and welcome discussion regarding age verification.

Currently, Stoat has taken the temporary measure of blocking access to age-gated content where necessitated.

9. Will you have end-to-end encryption (E2EE)?

We don't currently have E2EE, but it is a long-standing planned feature on our roadmap to introduce E2EE for direct messagess. It takes a lot of work to implement E2EE, and we have to make sure we get it right. A poor E2EE implementation is far worse than no E2EE.

10. When is Y feature going to be available? What is the ETA?

We can't provide accurate estimations for when new features will be live, so we don't. It isn't fair to you, or to Stoat's contributors, to give inaccurate figures and set false expectations.

Stoat is developed rather openly, so you're more than welcome to check-in on discussions and work happening on GitHub.

11. Do you automatically purge old content?

No, we don't automatically purge old messages, images, or uploads. Here is a link to a screenshot from 2021: https://cdn.stoatusercontent.com/attachments/1MFriR8AzllFWtm1snFk9gJVyZwyM3wSX350ZNpW4d/original

12. Is Stoat vibe-coded?

No, Stoat is not vibe-coded. See here for more info: https://github.com/orgs/stoatchat/discussions/1022#discussioncomment-15442591

13. Is Stoat English-only?

Not at all. We welcome other languages completely. Diversity is good and if we didn't want people speaking other languages we certainly wouldn't go through the efforts of translating the app and ensuring we have platform moderators that speak different languages.

That said, the official Stoat server on-platform is English only (with the exception of the support channel) purely for the sake of moderation. We don't have the capacity to ensure there are moderators speaking every language in that server around the clock, so we limit it to English.

14. Where do Stoat's GIFs come from?

Stoat sources GIFs from our very own service: Gifbox! You can upload your own GIFs to the platform for anyone to use and the catalogue of available GIFs is growing by the day.

Gifbox gives us full control to make the Stoat GIF experience as good as it can be, and down the line you'll be able to link Gifbox to your Stoat account. For developers, it even has an API for you to use.

You can read more about Gifbox here: https://stoat.chat/updates/introducing-gifbox


Let us know of any other questions you may have, and we'll endeavour to answer them. Remember, we're a small team working as volunteers and we have jobs and lives atop all of our Stoat commitments.


r/stoatchat • • 19h ago

Support Question Gifbox - Self Hosted

1 Upvotes

Hey guys,

After doing some searching and reading I can see Tenor was retired and caused some issues for Gifbox, at least for those now setting up self hosted instances such as myself. I can see that a new service has been launched as per : https://stoat.chat/updates/introducing-gifbox

How do self hosted users connect to this service to start pulling Gifs into the gif selector? I apologize if this has already been covered but I have not seen anything on searching the reddit or official git.

I am on self hosted version 0.16.2

Thanks!


r/stoatchat • • 1d ago

Support Question Microphone not working

1 Upvotes

TLDR I downloaded Stoat and some reason my microphone is not working at all, when asked my friends about it they told me they did not have any issues with sounds etc.


r/stoatchat • • 2d ago

Support Question Permission anomaly or just me?

0 Upvotes

Hey guys.

Very new to Stoat and have just finished setting it up on my home server. So far as roles, as standard there is the "Everyone" role which is the permissions all new users get when joining. I also created another "Admin" role for obvious reasons.

I am seeing something strange regarding the "Everyone" role. I have ensured that the permission "Manage Messages" under Channels is disabled, to prevent any users from being able to delete other users messages.

However when I log in as my Test user, I am still able to delete my Admin accounts posted messages. To be clear, it is not just the fact the delete icon appears in the UI, it actually does delete the message.

I have made sure my test account has no additional roles. Thinking it might be a gremlin, I went back to the Everyone role and enabled Manage Messages, saved it and then disabled it again. This however has not fixed the issue.

Any suggestions?

I am on version 0.16.2 (Self Host)

*Update\*

I have just created a new Group Chat (under Direct Messages). Inside the group chat, the permissions I have set are being abided by as expected as users under the "Everyone" role cannot delete posts, only Admins.

This now just leaves the main servers '#General' channel where these permissions are not working as expected.

If I create a new Text channel in the server, in this channel the permissions set are abided by. It is odd that the permissions are not sticking inside of the '#General' channel


r/stoatchat • • 7d ago

Support Question voice kept getting stuck on "connecting" on linux, turned out to be a broken ipv6 route

2 Upvotes

text chat worked totally fine but voice calls just sat on "connecting" forever spent way too long chasing the wrong things before finding the actual cause so im writing this up in case it saves someone the headache

TLDR: voice is livekit based now and the voice server has both ipv6 and ipv4 addresses. on my network the ipv6 side is just dead (connection refused, or reset mid handshake) while ipv4 works perfectly. the app tries ipv6 first and never falls back to ipv4 so voice hangs forever. text chat kept working the whole time because the chat socket is ipv4 only, which is why it never even looked like a network issue posting the whole thing because the fix is buried in a wall of diagnosis, skip to 'the fix that actually worked for me' if you just want the flag

there were a bunch of red herrings and i fell for basically all of them:

  • the "default device" audio fix from another thread, tried it, did nothing for me. might work for you though
  • post quantum key agreement / clienthello size stuff. i actually replayed the exact clienthello over raw sockets and it worked fine over ipv4, so only the address family mattered. red herring
  • my vpn/proxy tunnel. fine, ipv4 worked directly. red herring
  • app version. v1.5.4 behaves the same as the older ones, updating does not help

how to check if this is your problem

first get your voice nodes hostname, stoat publishes it in the settings api:

curl -s https://api.stoat.chat/ | grep -o 'wss://[^"]*livekit[^"]*'

mine (october 2026) was livekit.hel1.voice.stoat.chat, yours might be different

then test both families:

dig +short A    livekit.hel1.voice.stoat.chat
dig +short AAAA livekit.hel1.voice.stoat.chat
curl -4 -sv --max-time 10 https://livekit.hel1.voice.stoat.chat/ 2>&1 | tail -5
curl -6 -sv --max-time 10 https://livekit.hel1.voice.stoat.chat/ 2>&1 | tail -5

if the -4 one does a tls handshake fine and the -6 one gets refused or instantly reset, congrats, this is your issue

if you want actual proof instead of guessing, run the app with a net log:

flatpak run chat.stoat.StoatDesktop --log-net-log=/tmp/netlog.json --net-log-capture-mode=IncludeSocketBytes

quit the app after (it only writes the file when it exits) and search it for the livekit host. a dead ipv6 attempt shows up as net_error -101 / os_error 104 on an ipv6 address with no ipv4 retry after it. seeing that in the log is the thing that finally made it click for me

the fix that actually worked for me

didn't touch the app itself, just copied the flatpaks desktop file into my user applications dir and added one chromium flag to the Exec line:

cp /var/lib/flatpak/exports/share/applications/chat.stoat.StoatDesktop.desktop ~/.local/share/applications/

then at the end of the Exec line (keep the existing flatpak run part):

--host-resolver-rules="MAP livekit.hel1.voice.stoat.chat 157.180.45.15"

this pins the voice host straight to the ipv4 address so the app never wastes its one attempt on the broken ipv6 route. voice joined on the first try after that. checked with ss -tnp | grep 157.180.45.15 and there was a proper estab connection

two catches though. the ip is current as of october 2026, if stoat ever moves the node you have to re-run the curl and update the MAP rule. also the override only applies when you launch from the desktop entry (menu, gtk-launch), typing flatpak run yourself skips it

while im here, two other linux things people keep running into: turning your webcam on inside a voice call can disconnect you (known upstream bug, still open), and screen share is capped at 720p30

honestly the real bug is that the client never falls back to ipv4 after an ipv6 socket fails, worth filing that with the for-desktop repo. the net log evidence above is enough for a decent report if you want to do it


r/stoatchat • • 8d ago

stoatchat Release: v0.16.2

10 Upvotes

Changes

Fixes

  • fix: validate create invite body & make body optional (#1040)
  • fix: allow joining discoverable servers by ID (#1048)

Other

  • ci: create notes on release prepare (#1039)
  • ci: tighten triggers for publish (#1041)

Moderators: Want automated GitHub release posts like this? Install Release Announce to use it in your subreddit.


r/stoatchat • • 9d ago

Support Question just registered. can't join any servers.

2 Upvotes

tried the desktop app, the web app, and the legacy website. also tried copying invite links from the web app and adding it via the plus symbol- nothing.

is there a grace period for new accounts before they can join servers?


r/stoatchat • • 12d ago

stoatchat Release: v0.16.1

14 Upvotes

Changes

Fixes

  • fix: validate create invite body & make body optional (#1042)

Moderators: Want automated GitHub release posts like this? Install Release Announce to use it in your subreddit.


r/stoatchat • • 13d ago

stoatchat Release: v0.16.0

19 Upvotes

Changes

Features

  • feat: permissions to block external emojis (#926)
  • feat: bot roles with permissions upon joining a server (#883)
  • feat: invite expiry and max use limit (#986)
  • feat: add assets route to root payload (#1021)
  • feat(nix): migrate to flake and remove default.nix (#1019)
  • feat: Use new shield URL (#1018)
  • feat: add information fields to public bots (#1030)
  • feat: Fix twitter embeds via fxtwitter api (#1016)
  • feat: opentelemetry crate and files/autumn integration (#499)

Fixes

  • fix(tests): PubSub refactor in Delta test harness (#982)
  • fix(database): omit empty MongoDB update operators (#872)
  • fix: deduplicate role entries when editing member roles (#1004)
  • fix: Actually update permissions for webhooks (#1003)
  • fix(compose): Swap MinIO to Silo (#1005)
  • fix: enforce UseExternalEmojis permission on message reactions (#1012)
  • fix(group): Prevent bots being assigned ownership of group (#1015)
  • fix: use precompiled cargo edit
  • fix: skip unversioned crates when selecting version

Other

  • chore(ci): skip building base image if nothing about it has changed (#1002)
  • chore: remove build info and rename revolt -> stoat (#928)
  • chore(deps): update rust crate lapin to v4.12.0 (#997)
  • test(delta): add unit tests for webhook creation and fetching (#1007)
  • ci: github to gerrit PR lifecycle
  • ci: fix gerrit mirror
  • chore: add .editorconfig (yaml only for now)
  • ci: configure tests with zuul
  • ci: bridge Gerrit tag releases to GitHub
  • ci: use tag body as release
  • ci: add rc warning to release description
  • chore: update maintainer entry on crates (#1036)
  • ci: adopt GH release pattern like Immich, import tasks back in (#1037)
  • ci: delete Gerrit workflows for now (#1038)

Moderators: Want automated GitHub release posts like this? Install Release Announce to use it in your subreddit.


r/stoatchat • • 15d ago

for-web Release: stoat-for-web-v0.16.3

6 Upvotes

0.16.3 (2026-10-13)

Reverts

  • Message toolbar not appearing on hybrid devices after PR 1715 (#1726) (aa10325)
  • Message toolbar not appearing on hybrid devices after PR 1719 (aa10325)

Moderators: Want automated GitHub release posts like this? Install Release Announce to use it in your subreddit.


r/stoatchat • • 15d ago

for-web Release: stoat-for-web-v0.16.2

13 Upvotes

0.16.2 (2026-10-12)

Bug Fixes

  • add polyfills to prevent startup crash on Safari < 18.4 (#1700) (b5e4b3e)
  • Attachment width & colors (#1717) (18a474d)
  • break out of nested client when Discover iframe navigates to the app (#1711) (fba5de3)
  • Changing from home to a text channel no longer re-fetches upwards (#1723) (9aad54e)
  • Channel will no longer be stuck when moving back and forth (#1699) (91397cd)
  • ios: keep the message box above the keyboard (#1719) (4e50383)
  • ios: long press, sticky hover and stuck tooltips (#1715) (f80785f)
  • ios: stop message list jumping and pull-to-refresh while scrolling (#1716) (1af30e5)
  • scrollToNearestMessage handles message not found (#1718) (8cd4875)
  • ui: avoid evaluating floating accessor in cleanup (#1720) (531a3b2)
  • ui: suppress ping badges in muted channels (#1688) (398c8a5)
  • Update stoatjs for better websocket handling, less reconnects (#1707) (019e27d)

Moderators: Want automated GitHub release posts like this? Install Release Announce to use it in your subreddit.


r/stoatchat • • 15d ago

Support Question How do i fix mobile notifications

7 Upvotes

I've wanted to jump off discord recently so i was looking at Stoat, Osmium, and Fluxxer, and i want stoat to work cause of the customization but its just not going to if i cant get mobile notifs, is there something im missing? is there some addon i can use to fix this?


r/stoatchat • • 16d ago

Support Question Hi. New to Stoat. I have some problems! :(

7 Upvotes

Me and my friends have slowly started to move ourselves and our group chat over to Stoat in the event Discord gets banned in their country. Stoat is great for this! Open source, free customization and the like. But, at least on my end, i'm not able to upload a PFP or banner, or send images. Really, anything that isn't sending/receiving text messages or friend requests doesn't work, and it's quite upsetting, as i can't discover servers or communities either. Furthermore, the web client doesn't work on my phone (iOS 17, iPhone SE 2, gray screen), so i'm having to resort to old.stoat.chat to do so. The dedicated Apple Silicon desktop client doesn't work either.


r/stoatchat • • 24d ago

Miscellaneous Notifications on mobile?

6 Upvotes

Just curious if theres a way to enable notifications on the mobile app for general server activity?


r/stoatchat • • 25d ago

Support Question Where are stoats Voice servers?

6 Upvotes

Title. I can't find any hint, neither in web or any in app debug to where the voice servers are, or what the ping is.

Does anyone know where they are?

Thanks in advance

EDIT: I would prefer to self-host stoat but the hassle with recompiling the damn app (lol???) is too much for me.


r/stoatchat • • 25d ago

Support Question Constant disconnecting and reconnecting

5 Upvotes

Hey so been using Stoat for a little bit now, and while I think its great, theres one major issue I have been having. Almost every few minutes, no matter if I'm on wifi, on the desktop app, mobile data, or the browser version, i disconnect and reconnect. I cant even scroll back in chat for more than a minute or two to check what I missed before the reconnect shoots me back to the most current message. Not to mention I usually have it full screen on a separate monitor, and when it does this it flashes and makes just enough motion to make me constantly check it thinking its like a pop-up or something. And it does the same thing on my phone too no matter where I am so I know my computer isn't the issue either. I'd just like to be able to browse without the entire page blinking every few seconds


r/stoatchat • • 25d ago

Support Question Transmissão fechando

1 Upvotes

Toda vez que tento fazer uma transmissão de tela no celular eu sou desconectado da chamada, isso em vários dispositivos diferentes


r/stoatchat • • 25d ago

Miscellaneous I need help with roles

1 Upvotes

Hello everyone! I'm very new to stoat and I have no idea how to set roles to people. I've been trying for a while and i cant find the option to do it. Please help


r/stoatchat • • 27d ago

for-web Release: stoat-for-web-v0.16.1

10 Upvotes

0.16.1 (2026-10-01)

Bug Fixes

  • Ack on refocus (#1681) (74f8a6d)
  • add "quiet zone" for TOTP QR code (#1671) (48b1fcd)
  • Autocomplete now adds ZWNJ on regional indicators (#1686) (c3c43a4)
  • Delete modal no longer crashes when deleting system messages (#1674) (eec37d5)
  • Dialog buttons round again (#1680) (494b73e)
  • Disable gifbox if no embed perms (#1682) (05f9300)
  • image/video lightbox has context menu now (#1619) (380f059)
  • Standalone Regional indicators stay separate now due to ZWNJ (#1666) (1bcd45c)
  • voice: prevent call drops on screen share (#1679) (b8aa4fb)
  • voice: prevent calls dropping on screen share by updating livekit-client to 2.22.3 (b8aa4fb)

Moderators: Want automated GitHub release posts like this? Install Release Announce to use it in your subreddit.


r/stoatchat • • 29d ago

Support Question Self hosted Stoat, but can't login on the official Stoat app

4 Upvotes

As the title suggests, I self hosted Stoat on my machine. I want to use it on my android and iOS phone but there is no way to set your instance to your host and login. What do I do here?


r/stoatchat • • Sep 28 '26

Support Question Stoat streaming full PC audio instead of application-specific audio on Windows 10?

7 Upvotes

Me and some friends are trying to use Stoat's video streaming as an alternative to Discord since it's currently banned in Brazil and one of my friends lives there, but I'm having an issue that makes Stoat's video streaming basically unusable for our use case: it's streaming full desktop audio even in single-application streaming mode, which means my friends' voices get echoed back at them. I tried messing with the input/output settings, but none of them seemed to help aside from running Stoat's voice call output to a different audio device (but then I couldn't hear it, so that's not really a solution). Is there something else I should be changing, or is this just a bug on Stoat's end?


r/stoatchat • • Sep 25 '26

Miscellaneous Do people actually use Stoat ?

79 Upvotes

Discord just implemented the mass-surveillance bullshit in my country & I'm looking for alternatives that people actually use.

I thought about moving to Stoat but I want to make sure this isn't just another Guilded & that there isn't anything fishy about it (waiting to get popular to then become Discord 2.0, asking for ID & such).

For communities I'm looking for : TF2 (people who actually play the game) & Pokémon.


r/stoatchat • • Sep 25 '26

Support Question Stoat not working on tablet.

Post image
6 Upvotes

For some reason when I try to use Stoat on my iPad, all I get is a completely dark gray screen! It didn’t do this before until a few hours ago. Does anyone know why this is happening and how it can be fixed?


r/stoatchat • • Sep 25 '26

for-web Release: stoat-for-web-v0.16.0

7 Upvotes

0.16.0 (2026-09-25)

Features

Bug Fixes

  • Allow re-viewing existing invite codes (#1488) (1677503)
  • auto-scroll when reaching edge in channel list (#1630) (38c3465)
  • border radius on connected button groups (#663) (edd72eb)
  • correctly handle hidden channels being re-ordered (#1639) (10e5934)
  • Don't allow message prefix to overflow to prevent bounce on sending (#1598) (04afce2)
  • don't fetch all users for reactions (#1612) (eab09bc)
  • Fresh installs should no longer overwrite syncs (#1622) (33a9465)
  • guard against bot.user being undefined in delete confirmation dialog (#1567) (2071036), closes #1508
  • Icon buttons have radii again (#1659) (194e77b)
  • ignore text in attachment file DnD zone & don't flicker (#1614) (772f584)
  • image cropper (#1658) (f02e0e1)
  • instance: Don't show remote channel on selfhosted for own origin (#1649) (6411c8e)
  • instance: Webhook link should use API URL instead of frontend URL (#1654) (162b339)
  • keep server drag ghost pinned on scroll (#1657) (5831df7)
  • keep the channel list from jumping to the top (#1583) (4b18d9e)
  • let channels be reordered right after expanding a category (#1641) (aa5dab1)
  • Make scrolling between channels more consistent (#1599) (8ea8992)
  • Mobile-friendly changes for emoji picker (#1301) (9d2d64c)
  • pick the drop slot from the cursor (#1640) (d53a94b)
  • remove delete button from DMs list (#1644) (9f8e6c4)
  • Remove touch listeners on tooltip (#1651) (0d3ef9a)
  • ui: Update tooltip content based on friend requests (#1631) (35aebf4)
  • use approximate_member_count instead of a hardcoded server list (#1650) (81bfccd)
  • use live updates in GIF search (#1628) (eeddbf7)
  • Visual padding issues (#1558) (b8cf336)
  • Voice outline works in pip again (#1603) (36296b1)
  • Webhook link should use API URL instead of frontend URL (162b339)
  • website embed title overflowing card, double icon on embed (#1575) (6664cb2)

Moderators: Want automated GitHub release posts like this? Install Release Announce to use it in your subreddit.