v0.17.0

Never miss a payment or subscription again.

Montly tracks bills, subscriptions, payments, and reminders — month by month, automatically. Receipt uploads, spending reports, multi-user support, and a clean mobile-friendly UI, all self-hosted.

Free and open source — MIT license — no cloud account or subscription required

Montly task list — monthly overview with progress and amounts

Everything you need to stay on top of recurring tasks

📅

Recurring tasks

Monthly, bi-monthly, quarterly, semi-annual, or annual intervals. Tasks recur automatically — no re-entry needed.

Completion tracking

Mark tasks done, skip a month, or log the actual amount paid. Three states: pending, completed, skipped.

💳

Receipt uploads

Attach PDFs or images to each completion. Stored securely, served only to the owning user.

📊

Spending reports

Monthly bar chart with 6-month history and 3-month forecast, category donut, YTD totals, and peak-month stats.

👤

Multi-user

Isolated data per user. Admin can create and delete accounts. Each user has their own settings and tasks.

👥

Task sharing

Share individual tasks with other users. Collaborators see the task in their monthly view with a "shared by" badge and can toggle, skip, and attach receipts. Completions are shared state visible to all collaborators.

🔒

API tokens & webhooks

Headless access via Bearer mt_… tokens. Outbound webhooks on task completion, uncompletion, skip, and monthly digest. Test webhooks directly from the Settings panel.

🔨

Zero-dependency setup

Single Docker image with embedded frontend. SQLite by default — no external services required.

📋

Audit log

Append-only log of who completed, edited, deleted, or skipped tasks and who managed users or tokens.

📄

CSV import & export

Export all completions to CSV for use in spreadsheets, or import from the same format to migrate or bulk-load historical data.

A closer look

Reports — bar chart of monthly spending with 3-month forecast and category donut chart
Reports — spending history, forecast, and category breakdown
Mobile checklist — task list on a small screen with touch-friendly controls
Mobile — touch-friendly, works on any device

Up and running in under a minute

Requires Docker with Compose v2 (docker compose). SQLite is embedded — no database setup required.

git clone https://github.com/lucaslra/Montly.git
cd Montly
docker compose up -d

Open http://localhost:8080 — on first access you'll be prompted to create the admin account.

Or pull the pre-built image:
docker pull ghcr.io/lucaslra/montly:latest

Built on proven, boring technology

Go 1.25 Chi router · pure-Go SQLite (no CGO)
React 19 + Vite Plain CSS · hooks pattern · no UI framework
SQLite / PostgreSQL SQLite by default (pure Go, no CGO) · PostgreSQL supported via DB_TYPE=postgres
Docker Multi-stage build · non-root user · embedded frontend