2026 active repo ↗

mikrotik-wg-flask

What it is

A small web app that generates WireGuard server and client configs for MikroTik RouterOS. It builds paste-ready RouterOS commands, standard WireGuard client .conf files, QR codes for mobile clients, and ZIP archives for bulk download.

Why it exists

The original version was a client-side Vue app. This rewrite moves key generation and config storage server-side, which makes it easier to keep a history of generated server and client configs instead of treating every run as a disposable browser session.

How it works

Flask handles the app and API routes, Jinja2 and HTMX render the UI, SQLite stores generated configs, and Python cryptography generates X25519 keys and preshared keys. The app is intentionally boring: fill in router parameters, generate the server, generate clients, then paste the commands into RouterOS.