github SamuelDonovan/minimost v0.0.1

latest releases: dev, v0.0.4, v0.0.3...
4 months ago

MiniMost v0.0.1 — Initial Release

MiniMost is a lightweight, self-hosted chat platform for private networks. It runs entirely on Python and SQLite — no external database, no root access, no infrastructure. Just Flask and a browser.

Highlights

  • 💬 Channels & DMs — configurable public channels, invite-only private channels you can rename and manage, plus one-on-one and group direct messages.
  • 🔍 Searchable history — every message is saved and full-text searchable; new users see history from day one.
  • ✏️ Rich messaging — quote-replies, edits, deletes, emoji reactions, and inline image attachments (paste, drag-and-drop, or paperclip), all syncing in real time.
  • 👀 Presence & @mentions — online status, typing indicators, and @mention/@everyone pings with sound + desktop notifications and read receipts.
  • 📞 Voice, video & screen sharing — calls and screen shares from any DM or private channel, growing into group calls with live speaking indicators.
  • 🛡️ LAN-first, peer-to-peer media — WebRTC media flows directly between participants and never touches the server; a bundled STUN server means nothing external to configure, even on air-gapped LANs.
  • 🔒 Security-minded — PBKDF2 salted/hashed passwords with enforced complexity, read-protected message database, parameterized queries throughout, and account lockout on repeated failed logins.
  • 🧹 Self-maintaining — a background thread prunes old messages/attachments by age and trims by size cap; no cron job required.
  • 🎨 Personalization — avatars, display-name colors, hideable DM threads, configurable per-session notifications, dark theme, and a touch-friendly responsive layout with Vim-style keyboard shortcuts.
  • 🗑️ Account self-deletion & 🔑 admin password reset — soft/hard self-delete with password confirmation, and CLI-generated one-time reset links.

Requirements

  • Python 3.6+
  • Flask

Installation

pip install minimost

Then run:

minimost

On first run, MiniMost generates a self-signed TLS certificate in pure Python and serves over HTTPS at https://127.0.0.1:5000. Use --host / --port to change the bind address.

Free and MIT licensed — no license keys, no user limits, no hidden enterprise edition. What you read is exactly what you run.

Don't miss a new minimost release

NewReleases is sending notifications on new releases.