Description
## 🏛️ The missing social layer for your server
**Bulletin boards, player mail and guilds — 100% server-side. Your players install nothing.**
Vanilla clients can join and use every feature: boards are vanilla lecterns, notes are vanilla written books, every screen is a vanilla menu. No custom blocks, no custom items, no external backend — everything lives in your world save. Also works in singleplayer.
✅ Works with **any client** — vanilla, Fabric, Forge, whatever can join
✅ **Zero setup** for players — install once on the server, done
✅ **No external services** — nothing ever leaves your server
---
## 📌 Bulletin Boards
Turn any lectern into a community board. Players pin written books for others to read or take — announcements, trades, lore, recruitment. Only books are kept; anything else is returned when the board is closed.
/townsquare board create` — turn the lectern you're looking at into a board *(op)*
/townsquare board remove` — remove it, discarding its notes *(op)*
/townsquare board list` — count boards in this dimension *(op)*
## ✉️ Player Mail
Send mail to anyone on the server — **even while they're offline**. They're notified on login and read when they choose.
/mail send <player> <text>` — send a letter (recipient name autocompletes)
/mail sendbook <player>` — send the item in your main hand as an attachment
/mail read` — letters to chat, attachments to your inventory; overflow drops at your feet, nothing is ever lost
## 🛡️ Guilds
/guild create <name>` — found a guild (3–16 chars)
/guild invite <player>` — founder only, works while they're offline too
/guild join <name>` — join, invitation required
/guild leave` — leave; if the founder leaves, the guild is disbanded
/guild info` — founder and member list
/g <text>` — guild chat, delivered to online members
---
## ⚙️ Install
Drop the jar in your **server's** `mods/` folder together with **Fabric API**. That's it — players connect with any client, modded or vanilla.
*Requires Minecraft 1.21.11 · Fabric Loader 0.19.3+ · Fabric API*
## 📋 Notes for admins
- Mailboxes and guild membership are keyed by player name (lowercase). A name change starts fresh.
- Breaking a lectern doesn't remove its board entry — harmless; run `/townsquare board remove` first if you like tidy worlds.
Found a bug? Ideas? Open an issue on [GitHub](https://github.com/Topsyy-y/townsquare) — actively developed.
📦 Modpack policy
✅ YES — you are welcome to include HyperShader in your modpack, as long as it points to this official page (CurseForge/Modrinth reference).

