[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.

Update README.md

authored by

Fascinating Pistachio and committed by
GitHub
(Feb 16, 2026, 8:54 AM UTC) 8b547d46 912ec0f0

+67 -57
+67 -57
README.md
··· 1 1 # Ermine 2 2 3 - ```{=html} 4 3 <p align="center"> 5 - ``` 6 - `<img src="https://github.com/FascinatingPistachio/ermine/blob/main/assets/android-chrome-192x192.png?raw=true" width="96" />`{=html} 7 - ```{=html} 4 + <img src="https://github.com/FascinatingPistachio/ermine/blob/main/assets/android-chrome-512x512.png?raw=true" width="120" /> 8 5 </p> 9 - ``` 6 + 7 + <p align="center"> 8 + <img src="https://img.shields.io/badge/Build-Experimental-8AB4F8?style=for-the-badge" /> 9 + <img src="https://img.shields.io/badge/Interface-Refined-9FC3E8?style=for-the-badge" /> 10 + <img src="https://img.shields.io/badge/Ecosystem-stoat.chat-171A21?style=for-the-badge" /> 11 + </p> 12 + 13 + --- 14 + 10 15 Ermine is a refined, Discord-inspired web client for **stoat.chat**. 11 16 12 - It prioritizes clarity, hierarchy, and composure while preserving core 13 - Stoat/Revolt functionality. 17 + It prioritizes clarity, hierarchy, and composure while preserving core Stoat/Revolt functionality. 14 18 15 19 This project is **experimental** and under active development. 16 20 17 - ------------------------------------------------------------------------ 21 + --- 18 22 19 23 ## Interface 20 24 21 - - Structured three-column layout 22 - - Space rail\ 23 - - Channel sidebar\ 24 - - Timeline + composer\ 25 - - Member panel 26 - - Focused interaction model 27 - - Reduced visual noise\ 28 - - Sharper spacing and hierarchy\ 29 - - Controlled color system 30 - - Composed system copy 31 - - "Preferences" instead of "User Settings"\ 32 - - "Direct" instead of "Friends"\ 33 - - "Live" instead of "Active Now" 25 + **Structured Layout** 26 + 27 + - Space rail 28 + - Channel sidebar 29 + - Timeline + composer 30 + - Member panel 31 + 32 + **Interaction Model** 33 + 34 + - Reduced visual noise 35 + - Sharper spacing and hierarchy 36 + - Controlled frost-toned color system 37 + 38 + **App Chrome Adjustments** 39 + 40 + - “Preferences” instead of “User Settings” 41 + - “Direct” instead of “Friends” 42 + - “Live” instead of “Active Now” 34 43 35 44 Familiar structure. Cleaner execution. 36 45 37 - ------------------------------------------------------------------------ 46 + --- 38 47 39 48 ## Functionality 40 49 41 - Core Stoat/Revolt capabilities are preserved: 50 + Core Stoat/Revolt capabilities: 42 51 43 - - Session login (credentials or token) 44 - - API root configuration discovery 45 - - Realtime events over WebSocket 46 - - Message sending and timeline updates 47 - - Profile popout modal 48 - - `@me` landing experience 52 + - Session login (credentials or token) 53 + - API root configuration discovery 54 + - Realtime events over WebSocket 55 + - Message sending and timeline updates 56 + - Profile popout modal 57 + - `@me` landing experience 49 58 50 - ------------------------------------------------------------------------ 59 + --- 51 60 52 61 ## Configuration 53 62 54 63 Default endpoints: 55 64 56 - - API: `https://api.stoat.chat` 57 - - WebSocket: `wss://stoat.chat/events` 58 - - CDN: `https://autumn.revolt.chat` 65 + ``` 66 + API: https://api.stoat.chat 67 + WebSocket: wss://stoat.chat/events 68 + CDN: https://autumn.revolt.chat 69 + ``` 59 70 60 - Connection overrides are available under: 71 + Overrides are available under: 61 72 62 73 **Advanced connection configuration** 63 74 64 - No restart required. 65 - 66 - ------------------------------------------------------------------------ 75 + --- 67 76 68 77 ## Local Development 69 78 70 - Main application entry: 79 + Entry point: 71 80 72 - - `src/App.jsx` 81 + ``` 82 + src/App.jsx 83 + ``` 73 84 74 85 Run using your existing React + Tailwind setup. 75 86 76 - ------------------------------------------------------------------------ 87 + --- 77 88 78 89 ## Deployment (Vercel) 79 90 ··· 81 92 82 93 Optional environment variables: 83 94 84 - - `VITE_STOAT_API_URL` 85 - - `VITE_STOAT_WS_URL` 86 - - `VITE_STOAT_CDN_URL` 95 + ``` 96 + VITE_STOAT_API_URL 97 + VITE_STOAT_WS_URL 98 + VITE_STOAT_CDN_URL 99 + ``` 87 100 88 - Values are injected at build time. Manual overrides remain available 89 - from the login screen. 101 + Values are injected at build time. Manual overrides remain available from the login screen. 90 102 91 - ------------------------------------------------------------------------ 103 + --- 92 104 93 105 ## Privacy 94 106 95 - - Session continuity is maintained using browser cookies: 96 - - `ermine_session_token` 97 - - `ermine_user_id` 98 - - `ermine_api_url` 99 - - Ermine does not store user content outside configured stoat.chat 100 - endpoints. 101 - - Network communication is limited to selected API, WebSocket, and CDN 102 - endpoints. 103 - - See `privacy-policy.html` for the user-facing notice. 107 + - Session continuity is maintained using browser cookies: 108 + - `ermine_session_token` 109 + - `ermine_user_id` 110 + - `ermine_api_url` 111 + - Ermine does not store user content outside configured stoat.chat endpoints. 112 + - Network communication is limited to selected API, WebSocket, and CDN endpoints. 113 + - See `privacy-policy.html` for the user-facing notice. 104 114 105 - ------------------------------------------------------------------------ 115 + --- 106 116 107 117 ## Direction 108 118 109 119 Ermine is the composed interface layer for the stoat.chat ecosystem. 110 120 111 - Minimal shell. Full control. 121 + **Minimal shell. Full control.**