DEV Community

Tumic
Tumic

Posted on AI-assisted

I Built a Free Shopping List App — No Signup, Real-Time Sync, and Offline Support

I Built a Free Shopping List App — No Signup, Real-Time Sync, and Offline Support

Real product screen · Add items, check them off, and share your list.

I recently launched shoppinglist.page, a free shopping list web app that makes grocery shopping simpler.

The idea was straightforward: Why should something as simple as a grocery list require creating an account, installing an app, or dealing with unnecessary features?

I wanted something that just works.

What I Built

Shopping List is a lightweight web app that lets you create and share grocery lists instantly.

Here are the main features:

  • No signup required — Open the website and start adding items immediately.
  • Real-time synchronization — Share a list with your partner or family. Changes appear instantly across devices.
  • Offline support — Keep using your shopping list even without an internet connection.
  • Automatic grocery icons — Enter "milk", "bananas", or "bread", and the app automatically finds matching icons.
  • Multilingual item recognition — Add groceries in different languages without manually changing language settings.
  • Cross-platform — Works in your browser on Android, iOS, Windows, Linux, and macOS.
  • Free to use — No subscription required.

Making Grocery Lists Smarter

One feature I particularly wanted was automatic item recognition.

Instead of displaying a plain text list, the app recognizes grocery items and assigns matching icons.

For example:

  • Milk → 🥛
  • Apples → 🍎
  • Bread → 🍞
  • Carrots → 🥕

The interesting challenge was supporting different languages.

People naturally write their grocery lists in their own language. I didn't want users to select a language or translate their items manually.

The app uses language recognition and translation to identify grocery items and match them with the correct icons.

The result is a more visual shopping list without additional work for the user.

Sharing Without Accounts

Another important decision was keeping the app completely anonymous.

You don't need to register, verify an email address, or create a user profile.

Just create a list and share it.

Anyone with access to the shared list can add items or mark them as purchased, and changes synchronize in real time.

This is particularly useful for couples, families, or anyone shopping together.

Built With Cloudflare Workers

For the backend, I chose Cloudflare Workers.

I wanted a lightweight architecture without managing a traditional VPS for another small project.

The goal was to keep the application fast, simple to operate, and inexpensive to run.

Offline functionality and synchronization were also important considerations because shopping lists should remain usable even when connectivity is unreliable.

What's Next?

The app is now live, and my focus is on getting feedback from real users.

I want to keep it simple rather than adding features nobody needs.

If you're currently using another grocery list app, I'd be interested to know:

What's the one feature you couldn't live without?

And if you'd like to try mine:

👉 https://shoppinglist.page

It's free, works across devices, and doesn't require an account.

Thanks for checking it out!

Top comments (1)

Collapse
 
launchgatecheck profile image
Launch Gate •

For offline plus shared-list sync, I'd test two phones starting with the same milk item: A goes offline and marks it purchased, while B deletes it and adds a new milk item. Reconnect A and check that its queued change applies only to the original item ID, not the new item with the same label, and doesn't resurrect the deleted one. A visible pending-sync state would also prevent "saved locally" from looking like "the other shopper has seen it." How are those conflicts resolved?