Personal website of Francesco Bruno, built with Next.js (App Router), Tailwind CSS 4, Framer Motion, and PocketBase.
- Node.js (see
.nvmrc/ Docker image) + Yarn 1 - A PocketBase instance with the collections used by the site (
articles,projects,occupations,education,books,book_info,book_note, …) - A kDrive (Infomaniak) account for blog markdown, configured via env vars
cp .env.example .env # then fill in real values
yarn install
yarn devyarn dev— start the development serveryarn build— production buildyarn start— serve the production buildyarn lint— ESLint
yarn syncSvg regenerates book-note SVGs from PDFs stored in PocketBase. It requires graphicsmagick (and unzip/curl) installed on the host, e.g. sudo apt-get install -y unzip curl graphicsmagick.
docker compose up --buildBuild args are taken from .env (see docker-compose.yml).