eats.soubiran.dev

eats.soubiran.dev · barbapapazes/eats.soubiran.dev

Warning

This platform is currently under development.

The platform eats.soubiran.dev is a personal project aimed to showcase my pastry. It serves as a portfolio containing all the recipes I tried and pictures of the results.

eats.soubiran.dev homepage screenshot
eats.soubiran.dev homepage screenshot

Development

This platform is built with Laravel and Vue.js. Inertia.js is used to simplify the development. Nuxt UI is used as the component library.

Note

The design is work in progress to match my current branding.

Contrary to most of my other projects, a database is required as the content is created and managed directly on the platform. No Markdown files or static content are used. So, images of the pastries are stored on Cloudflare R2 to avoid storing them on the server directly. This makes the system more resilient.

For the authentication system, I rely on an external service, Authentik, hosted by a friend. The workflow is similar to any OAuth2 provider. However, this makes sure that only authorized and known users can access the platform.

Deployment

The platform is hosted on a Hetzner VPS. The deployment is automated using Forge.

On production, a SQLite database is used to keep things simple. A backup system is in place, using Litestream, to replicate the database to a dedicated R2 bucket.

In case of failure, the server can be rebuilt from scratch without any data loss.

Ecosystem