Installation
Requirements
Python 3.6 or later — MiniMost uses only standard-library modules plus Flask. No C extensions are required.
Flask — the only runtime dependency. It is installed automatically when you install MiniMost with
pip.SQLite — bundled with Python; no separate installation needed.
Optional (for production):
Gunicorn — recommended WSGI server for multi-user deployments.
Nginx (or similar) — reverse proxy for TLS termination and static file serving.
From Source (Recommended)
Clone the repository and install in editable mode:
git clone https://github.com/SamuelDonovan/minimost.git
cd minimost
pip install -e .
Editable mode (-e) means changes to the source files take effect
immediately without reinstalling.
From a Wheel (Air-gapped Environments)
If the server has no internet access, download the Flask wheel and its dependencies on a connected machine:
pip download flask -d ./wheels
Transfer the wheels/ directory to the server, then install:
pip install --no-index --find-links=./wheels flask
pip install --no-index minimost-0.1.0-py3-none-any.whl
Running for the First Time
After installation, start the server:
minimost
Or without installing:
python3 -m minimost
The server starts at http://127.0.0.1:5000.
On the first request, MiniMost automatically creates:
secret.key— a 64-character hex secret used for session signing.auth.db— the authentication database.presence.db— the shared real-time state database.users/— directory for per-user message databases.uploads/— directory for image attachments.
Open http://127.0.0.1:5000 in a browser, click Sign up, and create the first account.
Verifying the Installation
After starting the server you should see Flask’s startup banner:
* Running on http://127.0.0.1:5000
Navigate to that URL. You should be redirected to the login page. If you see a Python traceback instead, check:
Python version:
python3 --version(must be 3.6+).Flask is installed:
python3 -c "import flask; print(flask.__version__)"The current directory has write permissions (needed for database creation).
Development Dependencies
To run the code formatter:
pip install -e ".[dev]"
black src/
The dev extra installs Black, which is
also enforced as a pre-commit hook:
pip install pre-commit
pre-commit install
Sphinx Documentation Dependencies
To build this documentation locally:
pip install sphinx sphinx-rtd-theme
cd docs
make html
The generated HTML will be in docs/_build/html/.
Upgrading
Pull the latest changes and reinstall:
git pull
pip install -e .
Because MiniMost uses CREATE TABLE IF NOT EXISTS for all schema
definitions, database migrations are handled automatically — no migration
scripts are needed for minor updates.