[READ-ONLY] Mirror of https://github.com/aaronateataco/ermine. A stoat web client erminechat.vercel.app
0

Configure Feed

Select the types of activity you want to include in your feed.

30 1 0

Clone this repository

https://tangled.org/aaronworld.uk/ermine https://tangled.org/did:plc:ih3v2n3qojy5buruynsqvkkp
git@tangled.org:aaronworld.uk/ermine git@tangled.org:did:plc:ih3v2n3qojy5buruynsqvkkp

For self-hosted knots, clone URLs may differ based on your setup.



README.md

Ermine#

Ermine is a Discord-inspired web client for stoat.chat with custom branding and a cleaner layout. It is currently experimental, known to be buggy, and still missing many expected features.

Highlights#

  • Discord-like shell layout
    • Server rail on the left
    • Channel list sidebar
    • Main chat timeline + composer
    • Member list on the right
  • Ermine branding
    • Updated login screen branding and copy
    • Ermine references in app chrome
  • Better UX defaults
    • Improved spacing, hierarchy, and color consistency
    • Friend list landing experience for @me
    • Profile popout modal for users/members
  • Core Stoat/Revolt functionality preserved
    • Session login (credentials or token)
    • Config discovery from API root
    • Realtime events over websocket
    • Message sending and timeline updates

Configuration#

The client defaults to:

  • API: https://api.stoat.chat
  • WebSocket: wss://stoat.chat/events
  • CDN: https://autumn.revolt.chat

You can override these in Advanced connection settings on the login screen.

Local development#

This repository currently contains the main app component at:

  • src/App.jsx

Use your existing React/Tailwind host setup to run it locally.

Brand direction#

This app is intentionally branded as Ermine, designed for the stoat.chat ecosystem while keeping a familiar Discord-like interaction model.

Deploying on Vercel#

This project includes a vercel.json SPA rewrite so deep links resolve correctly to / (framework entrypoint) on Vercel, which avoids hard-coding an index.html file.

For environment-specific endpoints, set these Vercel environment variables:

  • VITE_STOAT_API_URL
  • VITE_STOAT_WS_URL
  • VITE_STOAT_CDN_URL

The app will use those values at build time, while still allowing manual overrides from Advanced connection settings on the login screen.