---
date: 2025-10-25
title: "New Year's Eve Parties"
draft: false
cover: ./images/cover.png
description: "An overview of our annual New Year's Eve parties, from Gatsby to Occult."
tags: ["event", "webdev", "party", "design"]
---
import Image from "@components/Image.astro"
import ImageSlider from "@components/ImageSlider.svelte"
import ImageGallery from "@components/ImageGallery.svelte"
Since 2019, my flat-share has been hosting a New Year's Eve party. Every year, we chose a special theme that determined the costumes and decorations.
I always took the parties as an opportunity to be creative and designed digital invitation cards for each party, sometimes simpler, sometimes more complex.
### 2019-2020: The Great Gatsby
For the "The Great Gatsby" party, a visualizer was projected onto the wall with a beamer. Instead of a complex website, there was only a static invitation page, supplemented by printed invitation cards. The tech stack was rather unusual with MongoDB, ExpressJs and SocketIO. The frontend was quite complex, but was developed completely without a framework. The project escalated and a chat and a party management system were implemented. In addition, an extensive Google Sheet was created to track expenses, number of guests and paid contributions.
import gg1 from "./images/gg-party-1.jpg"
import gg2 from "./images/gg-party-2.jpg"
import gg3 from "./images/gg-party-3.jpg"
import gg4 from "./images/gg-2.jpg"
import gg5 from "./images/gg-icons.jpg"
### [2022-2023: Harry Potter](https://s23.app.max-richter.dev)
After no party could take place in recent years due to Covid, we decided on the motto "Harry Potter" as my flatmate is a big fan. This time there was a more complex invitation website with an animated WebGL "Talking Hat" that assigned a house to each guest. After registration, the guests were automatically stored in a Google Sheet. There was an admin interface where we could award points to the individual houses, and an interactive quiz that guests could play on the mobile website. The frontend was implemented with SvelteKit, tRPC, Prisma and SQLite.
import hp1 from "./images/hp-1-start.png"
import hp2 from "./images/hp-2-start.png"
import hp3 from "./images/hp-3-need-name.png"
import hp4 from "./images/hp-4-which-house.png"
import hp5 from "./images/hp-5-select-house.png"
import hp6 from "./images/hp-6-attendance-probability.png"
import hp7 from "./images/hp-7-invitation-card.png"
### [2023-2024: Venetian Masked Ball](https://s24.app.max-richter.dev)
There was also an animated invitation website for the "Venetian Masked Ball". Guests could enter their name, from which a suitable title of nobility was then generated using an LLM. A portrait was then generated from the name and some information about their appearance, which was displayed in a kind of ancestral gallery. Technically, SvelteKit was used again, but this time with a PocketBase backend.
import venice1 from "./images/venice-1-start.png"
import venice2 from "./images/venice-2-mask.png"
import venice3 from "./images/venice-3-invitation-test.png"
import venice4 from "./images/venice-4-generate-portrait.png"
import venice5 from "./images/venice-5-portrait.png"
import venice6 from "./images/venice-6-gallery.png"
import venice7 from "./images/venice-1.jpg"
import Mask from "./components/Mask.svelte"
### [2024-2025: Everything is Fashion](https://s25.app.max-richter.dev)
For "Everything is Fashion" there was again an animated invitation website, but without interactive elements at the party itself. In keeping with the theme "everything is fashion", I wanted to shoot a teaser that refers to physical materials.
import eif1 from "./images/eif-party-1.jpg"
import eif2 from "./images/eif-video.mp4?url"
import videoUrl from "./images/eif-teaser.mp4?url"
### 2025-2026: Occult
For the upcoming New Year's Eve party 2025-2026, we are planning an "Occult" theme that will create a mystical and mysterious atmosphere.
import occult1 from "./images/occult-1.png"
import occult2 from "./images/occult-2.png"
import occult3 from "./images/occult-3.png"
import occult4 from "./images/occult-4.png"