unsubbed.co

myTinyTodo

For project management, myTinyTodo is a self-hosted solution that provides simple way to manage your todo list in AJAX style. Uses PHP, jQuery,...

A self-hosted task manager honestly reviewed. No marketing fluff, just what you get when you deploy it.

TL;DR

  • What it is: A lightweight, single-user todo list app written in PHP and jQuery. GTD-compliant. Runs on anything with a web server — including shared hosting [1][3].
  • Who it’s for: Individuals who want private, self-hosted task management without standing up a full Docker stack or paying for another SaaS subscription. Not for teams [1].
  • Cost savings: Todoist Pro costs $4/mo (billed annually); TickTick Premium runs ~$2.80/mo. myTinyTodo is GPL-licensed freeware — $0 software cost, runs on whatever server you already have.
  • Key strength: Genuinely minimal. Smart task-entry syntax, drag-and-drop sorting, tags, due dates, and priority levels in a single PHP deployment with no npm, no Node, no containers required [website].
  • Key weakness: This is a single-developer project with 188 GitHub stars, no native mobile apps, no sync API, and no multi-user support. The most recent third-party review is from 2012 [1]. It is what it is — a small, focused tool that has been quietly maintained for over fifteen years.

What is myTinyTodo

myTinyTodo is a browser-based todo list application built by Max Pozdeev. The pitch is in the name: it’s tiny, and it manages todo lists. You deploy it on a PHP web server, point a browser at it, and you have a multi-list task manager with tags, priorities, due dates, drag-and-drop ordering, and password protection. That’s the whole product [website][1].

The technical stack is PHP and jQuery. It stores data in SQLite, MySQL/MariaDB, or PostgreSQL — you pick based on what you have available. SQLite makes sense for personal use on a shared hosting account; MySQL or PostgreSQL if you’re running it alongside other apps on a VPS. The minimum PHP version is 7.2. This runs on infrastructure that costs $0/month if you already have shared hosting, or $3–5/month on the cheapest VPS tier if you don’t [README].

The project has been in active development since roughly 2008. The current version as of this writing is v1.8.3, released May 2025 — not abandoned, not blazing fast, but consistently maintained by one person. GitHub shows 188 stars and the repository description is “Your tiny todo list,” which is about as unassuming as the tool itself [GitHub].

One feature worth calling out: the smart syntax for task creation. Typing +1 Fix the invoicing bug #billing @tomorrow creates a high-priority task tagged “billing” with tomorrow as the due date, without touching a menu [website]. It’s a small thing that makes repeated data entry less painful.

The interface supports dark mode, prints cleanly, and works on mobile browsers. There’s no dedicated iOS or Android app, and no sync API that a native app could talk to [website].


Why People Choose It

The honest answer from the available sources is: people choose myTinyTodo because it’s simple, self-hosted, and requires almost nothing to run.

The most detailed coverage comes from an OpenSourceForYou article [1] that frames myTinyTodo explicitly as a GTD (Getting Things Done) implementation tool. The workflow maps directly: create an INBOX list to capture everything, an ACTIONABLES list for tasks that need doing, and a SOMEDAY list for things to revisit. Task notes hold processing context, tags enable review by category, and drag-and-drop lets you reorder by priority. The GTD methodology maps onto the tool’s feature set without requiring workarounds [1].

The privacy angle shows up in the context of the r/selfhosted community. A representative thread [2] captures the typical motivation: someone using TickTick for task management wants to keep their data private and off third-party servers. myTinyTodo is one of the options in that category — browser-accessible from any device, data stays on your server, no account required at a vendor.

What you don’t get is a deep ecosystem of third-party reviews, enterprise use cases, or team deployments. myTinyTodo appears consistently in “awesome-selfhosted” aggregator lists [3][4] as a task management option, described as “simple way to manage your todo list in AJAX style. GTD compliant.” [3] — but without the critical analysis that more widely adopted tools attract. That’s not a red flag by itself; it’s the normal footprint for a small, single-purpose tool that does its job without drama.


Features

Based on the official website and README:

Task management:

  • Multiple todo lists (tabs) [website]
  • Task notes for processing context [website]
  • Tags on tasks [website]
  • Due dates [website]
  • Priority levels: -1, 0, +1, +2 [website]
  • Drag-and-drop sorting between and within lists [website]
  • Smart input syntax: ±priority Task #Tag #Tag @duedate [website]
  • Full-text search across tasks [website]

Organization and navigation:

  • Multiple lists displayed as tabs
  • Sort by due date, priority, creation date, or manual drag-and-drop order [website]
  • Filter views by tag or search term [website]

Access control:

  • Password protection for the instance [website]
  • Single-user only — no per-account login, no team sharing [README]

UI and device support:

  • Dark mode [website]
  • Mobile-responsive layout [website]
  • Print-friendly CSS for paper-based review [website]

Database backends:

  • SQLite (default, zero-config) [README]
  • MySQL 5.7+ or MariaDB 10.2+ [README]
  • PostgreSQL 10+ [README]

What’s missing:

  • No native iOS/Android apps
  • No sync API (CalDAV, REST) that external clients could consume
  • No multi-user or team features
  • No recurring tasks
  • No file attachments
  • No calendar view
  • No integration with external services

Pricing: SaaS vs Self-Hosted Math

myTinyTodo has no cloud tier, no freemium model, and no commercial license. The software is GPL-2.0. You self-host it or you don’t use it.

What you pay for software: $0.

Infrastructure cost:

  • Shared hosting (already have one): $0 incremental
  • Minimal VPS (Hetzner CX11, DigitalOcean Droplet, Contabo S): $3–6/month

Comparison to paid alternatives:

ToolCostHostingMulti-device sync
myTinyTodo$0 + serverSelf-hostedBrowser-based
Todoist Free$0Vendor cloudYes (apps)
Todoist Pro~$4/moVendor cloudYes
TickTick Premium~$2.80/moVendor cloudYes (apps)
Things 3 (Mac/iOS)$50+$20 one-timeLocal/iCloudApple only

If you’re currently paying for Todoist Pro at $48/year and your usage is personal rather than team-based, the math is straightforward: self-host myTinyTodo on a $5/mo VPS (which likely runs other things too) and your task manager cost goes to zero. The savings per year are modest — $48 to $60 depending on the plan — but the data sovereignty argument is real. Your tasks don’t live on someone else’s server [2].

The more honest calculation: if myTinyTodo’s feature set covers your actual workflow (it’s a good fit for GTD-style personal task management [1]), then it replaces a recurring bill with a one-time setup. If you need native apps, offline sync, or any integration with calendars or other tools, it does not cover your workflow and you’d be retrofitting workarounds onto a tool that wasn’t built for those use cases.


Deployment Reality Check

This is one of the easiest self-hosted deployments in the category. No Docker required, no Node, no build steps.

What you actually need:

  • A web server with PHP 7.2+ (Apache, nginx, or anything that serves PHP)
  • PHP extensions: mbstring plus either pdo_sqlite + intl (SQLite path) or pdo_mysql/mysqli (MySQL path) or pdo_pgsql (PostgreSQL path) [README]
  • A writable directory for the database file if using SQLite
  • Optionally: MySQL or PostgreSQL if you prefer those over SQLite

Install process:

  1. Download the zip from the official site
  2. Unzip to your web root
  3. Navigate to setup.php in a browser, choose your database, run setup
  4. Delete or rename setup.php after setup completes (security step)
  5. Navigate to the app URL

The OpenSourceForYou article [1] from 2012 documents this exact process on Ubuntu with Apache — it was straightforward then and hasn’t gotten more complex. The v1.8.3 release in 2025 suggests the setup process has stayed stable.

What can go sideways:

  • File permissions: the SQLite database file and its directory need to be writable by the web server process (typically www-data). Forgetting this is the single most common setup issue with PHP apps of this type [1].
  • If you’re on shared hosting, ensure PHP extensions are available — some hosts disable pdo_sqlite or intl by default. Most shared hosts have them, but worth verifying before you start.
  • The supported browser list in the README is dated: Chrome 49, Safari 10, Firefox 53. These are minimum versions from circa 2016. Modern browsers work fine; the note exists to document that IE and Opera (Presto) are explicitly unsupported [README].
  • No HTTPS built-in — you’ll want your web server or a reverse proxy handling TLS if this is exposed to the internet.

Realistic time estimate: 15–30 minutes for anyone who has deployed a PHP app before. For someone setting up a LAMP stack from scratch on a fresh VPS: 1–2 hours including domain and HTTPS setup. On shared hosting with PHP already configured: closer to 10 minutes.


Pros and Cons

Pros

  • Genuinely minimal deployment. No Docker, no npm, no containers. If you have PHP, you have the entire dependency stack [README][1].
  • Runs on shared hosting. This is rare in the self-hosted tool space. If you already pay for shared hosting, myTinyTodo costs you nothing additional to run [1].
  • Smart input syntax. The ±priority Task #tag @date shorthand makes repeated task entry fast and keyboard-friendly [website].
  • Long-term maintained. Active since ~2008, still receiving updates in 2025 (v1.8.3). One developer, consistent releases, no signs of abandonment [website].
  • GTD-compliant workflow. The multi-list tab structure maps directly onto Collect / Process / Organize / Review / Do without requiring workarounds [1][3].
  • GPL-2.0 licensed. Your instance, your data, no vendor lock-in, no license that changes under you [3].
  • Dark mode and mobile-responsive. Works in a phone browser without a native app [website].

Cons

  • No native mobile apps. If you want to capture tasks from your phone quickly, you’re opening a browser and navigating to your instance. No push notifications, no home screen widget, no offline mode [website].
  • No sync API. There’s no CalDAV endpoint, no REST API, no Webhooks. The tool doesn’t talk to anything else. You can’t connect it to your calendar, your email, or any automation layer [README].
  • Single-user only. Password-protects the whole instance. No concept of users, permissions, or shared lists [README].
  • No recurring tasks. If you need “every Monday: check analytics” you’ll be recreating that task by hand [website].
  • 188 GitHub stars. This is a small project. Bugs get fixed on one developer’s schedule. There’s no enterprise support, no paid tier funding development, no community of plugin authors [GitHub].
  • Third-party coverage is thin and dated. The most detailed independent review available is from 2012 [1]. There are no recent comparison pieces, no YouTube walkthroughs, no active community forums. If you hit a problem, the documentation and changelog are your main resources.
  • No calendar view, no attachments, no integrations. The feature set is deliberately minimal. For some that’s a virtue; for others it’s a wall [website].

Who Should Use This / Who Shouldn’t

Use myTinyTodo if:

  • You want a personal GTD-style todo list and you already have a server or shared hosting account running PHP.
  • You’re paying $3–5/mo for Todoist or TickTick and your usage is purely personal — no team features, no mobile app dependency.
  • You want task data off third-party servers with zero vendor dependency.
  • You value simplicity above all else and the feature list on the homepage covers your actual workflow.
  • You like the idea of a tool that works in any browser, loads fast, and doesn’t require an app store.

Skip it (use Vikunja instead) if:

  • You need a proper REST API for mobile app sync or integrations.
  • You want CalDAV support so your tasks show up in a native calendar or todo app.
  • You want multi-user support or shared task lists.
  • You need recurring tasks.
  • You want a more modern codebase with Docker-based deployment and active community development.

Skip it (use Taskwarrior instead) if:

  • You live in the terminal and want a CLI-first workflow with powerful filtering, reports, and hook scripts.
  • You don’t need a web UI at all.

Stay on Todoist/TickTick if:

  • Native iOS and Android apps are non-negotiable — you need offline capture, widgets, and push notifications.
  • You share lists with a partner, family member, or team.
  • You want Todoist’s integrations with Google Calendar, Slack, or Zapier.
  • You have no server and no interest in maintaining one.

Alternatives Worth Considering

From the aggregator lists [3][4] and the broader self-hosted category:

  • Vikunja — The most feature-complete self-hosted todo/task manager right now. Go-based, GPL-3.0, REST API with CalDAV support, mobile apps, multi-user, Docker deployment. If myTinyTodo’s feature gaps are blocking you, Vikunja is the natural upgrade path [3].
  • Tracks — Ruby-based GTD implementation, more explicitly designed around the Getting Things Done methodology, with contexts and projects in addition to task lists. Older project, smaller community [3].
  • Taskwarrior — CLI-based, extraordinarily powerful filtering and reporting, no web UI by default (though Taskwarrior-web and Vikunja can front-end it). C++, MIT-licensed. For terminal users only [3].
  • tasks.php — Even simpler than myTinyTodo. A single PHP file using a JSON flat file for storage. No database required at all [3].
  • Nullboard — Single-page Kanban board in one HTML file. No server required, no database. Runs from a local file in a browser. Completely different model but covers the “I just need something simple” use case [3].
  • Todoist — The SaaS comparison. Better native apps, more integrations, Zapier-connected, team features. Costs $4/mo and your data lives on their servers.
  • TickTick — Todoist competitor with a built-in Pomodoro timer and calendar view. Slightly cheaper. Same vendor-lock tradeoffs [2].

For a non-technical user who wants to escape a task management SaaS subscription, the realistic shortlist is myTinyTodo vs Vikunja. Pick myTinyTodo if you want the simplest possible deployment with minimal moving parts. Pick Vikunja if you need native apps, multi-user support, or API access.


Bottom Line

myTinyTodo is not trying to compete with Todoist. It’s not trying to be a team tool, an AI-powered productivity system, or a platform with 300 integrations. It is exactly what it says: a tiny todo list that runs on PHP, stores data in SQLite, and gets out of your way. For that use case — individual GTD-style task management, fully self-hosted, deployable on shared hosting in under 30 minutes — it delivers without fuss [1][3].

The caveats are real: no native apps, no sync API, no recurring tasks, no multi-user support, and the community is thin enough that you’re largely on your own if something breaks. But if those limitations don’t match your actual requirements, what you get in return is a stable, 15-year-old tool that costs nothing, runs anywhere, and keeps your task data exactly where you put it.

If the setup feels like too much, upready.dev deploys self-hosted tools like this for clients. One-time fee, you own the instance.


Sources

  1. OpenSourceForYou“Getting Things Done Using myTinyTodo” (May 2012). https://www.opensourceforu.com/2012/05/getting-things-done-using-mytinytodo/
  2. Reddit r/selfhosted“Self-hosted todo solution” thread (2018). https://www.reddit.com/r/selfhosted/comments/9irpeg/selfhosted_todo_solution/
  3. TheHomelabWiki“Awesome Selfhosted - Task Management & To-do Lists”. https://thehomelab.wiki/books/helpful-tools-resources/page/awesome-selfhosted-task-management-to-do-lists
  4. AwesomeRank“Ranked awesome lists — Kickball/awesome-selfhosted”. https://awesomerank.github.io/lists/Kickball/awesome-selfhosted.html

Primary sources: