• Work
  • About
  • CV

Michael Hill

Freelance Experiential Software Developer
Portland, Oregon; Indianapolis, Indiana

  • Work
  • About
  • CV

Shared Lists

October 2026

Between my partner and me, we had a lot of lists to keep for various parts of our lives. Some lists were our own, and some were ones we wished we could share. Apple Notes wasn't really the best platform for this, and many of the apps that are available are paywalled or overly complex. We also had friends and family we wanted to be able to share with, but who weren't as tech savvy when it came to these kinds of applications. I wanted one set of to-do lists that everyone could edit at the same time from their phones, opened straight from the home screen without logging in each time. Shared Lists is that: a small installable web app with a Node.js server and a Postgres database.

From there it can:

- Show edits live on every phone, along with who else has the list open

- Grey out checked-off items instead of hiding them, so they can be restored with one tap

- Share a list by link, for anyone or only logged-in people, with view-only or edit access, and show exactly who has access and how they joined

- Send a push notification when someone else changes a list, batching rapid edits into one message and skipping anyone already looking at it

- Copy a list as plain text for a quick message, or export lists as CSV or JSON

- Keep accounts invite-only, with an admin page for invites, users and push delivery problems

Login and share tokens are stored only as hashes, list addresses are random and unguessable, and every request checks the person's access to that list.

Tools: Node.js, Express, PostgreSQL, WebSockets, Web Push, vanilla JavaScript (installable web app), SortableJS

01-lists.png
02-list.png
03-edit-item.png
05-copy-text.png
04-sharing.png
06-settings.png
05-copy-text.png
06-settings-full.png
07-guest.png
08-login.png
09-desktop-sharing.png
10-desktop-admin.png
10-desktop-admin-full.png