Francesco De Giorgio Software engineer · Pisa, Italy
IT EN
Let's talk

A beach club in one app, live since 2019.

Sunset Beach Club is a beach club in Palmi, on the Costa Viola in Calabria. It does not just rent parasols: inside the same gate there is a restaurant too, and both fill up in the same two hours. The app I built has been holding them together since 2019, and it is the longest‑running project I work on.

The problem

Three businesses behind one gate

Two queues in the same hour

A place like this is not one business. Someone wants a spot on the sand and someone wants a table for lunch, and they all want it between ten and noon. Two kinds of availability to keep straight, handled by the same people, already busy elsewhere.

A season you cannot make up later

A beach club works a few months a year, and inside those months only a handful of weekends really count. Someone who gets no answer in July does not come back in October: that spot stayed empty, and there is no way to sell it again afterwards. Anything broken here costs you straight away.

Decisions get made on the spot

Nobody plans anything on a beach. You decide to stay for lunch once you are already under the parasol, you decide to order something once you get hot. If that means getting dressed, queueing and walking back, the decision never turns into a sale: it fades in the time it takes to stand up.

The answer

The spot on the sand and the table in one move

The point was never to digitise two separate things. It was to stop treating them as separate: whoever books a spot on the sand is already deciding, in the same minute, whether they will eat there too.

1

The spot on the sand is settled the night before

The parasol booking is completed from a phone, in the evening, while the guest checks tomorrow's forecast, and it always closes with payment upfront. It reaches the club already decided and already paid: no calls to return, no names scribbled on a sheet of paper to be copied out the next morning with the wind turning the pages.

2

The table is booked from the same place

Whoever has taken a spot on the sand can add lunch without leaving the app and without talking to two different people. For the staff they stay two distinct kinds of availability; for the guest it is a single request.

3

Orders leave without standing up

From the sunbed you order and you wait. Whoever is serving gets the order already written down, with the number of the spot on it: they know what to bring and where, without crossing the beach asking whose it is. The queue at the counter stops being the only way to spend money.

Spot on the sand Table Order from the sunbed

Under the hood

What it takes to stay online for years

The hard part of an app is not publishing it. It is year four, when your customers' phones have updated three times, the store rules have moved, and the business has changed its mind about a couple of things in the meantime.

On the stores, and without them too

The app was born for the App Store and Google Play. Then it became obvious that the customers passing through never install anything: they are on that beach for one day and do not want a new icon on their phone. That is where the PWA came from, opening in the browser and working right away.

App Store · Google Play · PWA

The updates nobody asks for

Every year Apple and Google raise the bar: minimum versions, permissions, new requirements on the listings. This is work the client never requested and no customer ever sees, but skip it and the app disappears from the store. I do it while the club is closed, so nothing gets touched once the season is open.

Apple and Google review · Maintenance

The data belongs to whoever collected it

Bookings, contacts and history belong to the owner, and the accounts the app is published under are in his name. It is a choice that only shows on the day it matters: if tomorrow he wanted to carry on with somebody else, he takes it all with him without asking my permission.

Accounts · Data · Ownership

The person who wrote it still answers

Since 2019 this code has been touched by one person. A change asked for in mid August does not need a week of reading first: the memory of the project lives in whoever maintains it, not in a document. It is also why I keep few projects at a time.

Continuity · One point of contact

People pay the way they pay today

The money runs through Stripe, so the guest picks how to pay: card, phone wallet, Satispay and the other methods Stripe supports. This is not a detail for engineers. A missing payment method is a booking that never closes, and on a beach people decide in thirty seconds.

Stripe · Cards · Wallets · Satispay

Notifications land where people look

The app sends push notifications: the booking confirmation, and the notices the owners genuinely need to get through. It is the one channel that does not ask the guest to open anything, and for a seasonal business that is the difference between a message read and a message lost.

Push notifications · iOS · Android

The back office that runs it all

Behind the app there is a back office, and that is where the owners actually work: bookings, availability, what the app shows, the day that opens and closes. The app is the part guests see; the back office is the part that holds the season together, and I have never had to operate it in their place.

Back office · Bookings · Content

Where we are

An app nobody had to replace

The figure that tells you most about this project is not a download count: it is the start date. Since 2019 the club has never gone back: no spring where somebody decided to do it the old way again, no year where we threw everything out and started over. It is the same app, grown one piece at a time, in a field where software usually gets replaced every few years because nobody maintains it.

Spots on the sand/ Restaurant tables/ Orders from the sunbed

The clearest sign that it worked arrived in 2025, when Sunset wanted a website as well. That is where sunset‑palmi.it came from: the public shop window of the beach, which tells the story of the Costa Viola and walks whoever arrives from Google back into the app. A site built on an app from 2019 only makes sense if that app kept working in the meantime.

The same craft, on another beach and with a very different crowd, is in the Single Fin Pet Centric case study, in Tuscany. How you get from an idea to an icon on a store is written out step by step on the page about mobile apps for iOS and Android.

What this means for you

If what you run is not just one thing

If you run several services under one name

Campsites, farm stays, clubs, places with a restaurant attached: the names change, the problem does not. Different kinds of availability crossing over in the same hours, kept in line by somebody's memory. Putting them in one app is not about looking modern: it takes that job out of one person's head.

Bookings · Restaurant · Orders

If you need someone who sticks around

An app is not handed over and finished: stores change their rules, phones update, your business changes its mind. What I offer is not a delivery but somebody who still answers the year after, with costs written down before we start. If the season is close we can start from the PWA, which goes live without waiting for a store review.

Maintenance · Updates · Support