Personal project · Flutter application

À table! — Keep track of your kitchen

At home, I wanted to easily find out what food we had and what was approaching its expiry date. I did not know of an application that met my needs, so I created À table! to keep that list close at hand and avoid forgetting products at the back of the fridge.

  • Personal project
  • Flutter · Dart
  • Food inventory
  • Expiry reminders
  • Offline
Let’s talk about your project

A practical need at home

Initially, I was looking for a tool to help with grocery shopping and the food we already had at home. The idea was simple: check what was in the kitchen, enter dates and spot anything that had been sitting there too long. I built the project around this everyday inventory.

Know what you have without checking everything

Each food item has a record with its name, quantity, storage location and, when known, purchase and expiry dates. The inventory can be sorted by expiry date to highlight products that need attention.

  • Add, edit or remove a food item.
  • Filter the contents of the fridge, freezer or cupboard.
  • Enter an expiry date using shortcuts such as +2, +7 or +30 days.

Plan ahead instead of forgetting dates

The application distinguishes between food that is still within date, expiring soon and expired. A calendar view shows upcoming dates. Local notifications remind you when a product is approaching its expiry date, with an adjustable reminder period.

  • Indicators in the inventory when an expiry date is approaching or has passed.
  • A calendar to view upcoming expiry dates.
  • Reminders before the expiry date, depending on permissions and the platform in use.

An application that works offline

I chose Flutter and Dart for the interface, with Material 3. Food records are stored on the device in an Isar database, so viewing and updating the inventory does not depend on a network connection.

  • Riverpod for state management and interface updates.
  • Isar for local food storage.
  • GoRouter for navigation and TableCalendar for expiry dates.
  • Separate responsibilities for screens, data models, database access and notifications.

From a personal need to a working project

À table! brings inventory, dates and reminders together in one tool. This project shows how I start from a real use case, design the essential user journeys and connect a Flutter interface to local storage and device notifications. Its aim is to help people forget fewer food items and reduce waste.

Explore the code

Your questions, answered.

Is it a shopping list?

The project started from a need related to grocery shopping at home. The version presented focuses on food already available, its quantities, storage locations and expiry dates. This inventory also helps you check what you have before shopping.

How do alerts work?

A local notification can be scheduled before the expiry date, using the reminder period selected in settings. Expired food remains identifiable in the inventory. Notifications depend on device permissions and are not scheduled on Linux in this version.

Can I access my data without the Internet?

Yes, the inventory is stored locally with Isar. This version works on mobile and desktop; it does not offer inventory synchronisation across devices.

Explore further

Let’s start with your needs.

Your goal, your deadline, the tools you use: a few lines are enough to start the conversation.

Describe my project