Welcome to 50ml.org

A liquor mini-bottle collection

Mini-bottles, fifties, minis, nips. They have many names around the world. I began collecting 50ml liquor bottles sometime in 2006.

I’ve always liked small things. As a kid, Legos & Micro Machines were my some of my favorite toys. I’ve also [responsibly] enjoyed adult beverages throughout my adult life. Sometime in 2006, I was at a liquor store buying mini-bottles to take on a double date with my wife and friends. When I realized how many of the 50ml bottles were clones in shape and design of their larger counterparts, I was hooked.

Fast forward a few years and I had a pretty impressive collection growing in my basement. I added in some shelving to display the bottles on and organized them by type. I even got to the point where I was running out of room! My wife generously persuaded me to narrow the focus of the collection. I even had a huge 30th birthday party where we purged about 300 plastic bottles from the collection. Now I typically follow these general rules of thumb pertaining to my collection:

  • I only purchase new bottles. (There are tons of vintage bottles and even entire collections for sale online.)
  • I try to limit to glass bottles. (Plastic bottles are accepted if they have unique designs, prominent brand, etc.)
  • I try to purchase in person. (I would quickly bankrupt myself if I didn’t try to limit my online purchases.)
  • I definitely find more new bottles when I travel and try to bring them back from any trip.
  • 50ml is the standard, but any small-ish bottle is collected. Anything marked other than 50ml is denoted.
  • All gifts from friends and travelers have been added regardless of other qualifications.

A Web Developer’s Playground

As a web developer, I realized my collection presented the perfect opportunity for a learning project—something both quantifiable and complex enough to hold my attention. This site has been rebuilt multiple times over the years, each iteration an excuse to explore new technologies.

The original version launched around 2013, built with PHP and MySQL, using Bootstrap, jQuery plugins, and custom image processing. In 2014, I transitioned to full-stack development and rebuilt everything in Ruby on Rails, hosted on Heroku. Each rebuild taught me something new about databases, authentication, deployment, and front-end frameworks.

Now, in 2024-2025, the site has evolved once again into its most modern form yet.

The Modern Era: Next.js, Sanity, and AI

Fast forward to 2025, and the web development landscape has evolved dramatically. This latest iteration of 50ml.org represents another complete rebuild, this time embracing the modern JAMstack architecture and cutting-edge AI-assisted development practices.

Current Technology Stack

  • Next.js 16 - React framework with App Router, Server Components, and incredible performance optimizations
  • Sanity CMS - Headless CMS with real-time collaboration and powerful GROQ query language
  • Tailwind CSS - Utility-first CSS framework for rapid UI development
  • TypeScript - Type safety and enhanced developer experience
  • Vercel - Edge deployment with global CDN and instant rollbacks

AI-Assisted Development

This rebuild marks a significant milestone in my development journey: extensive use of AI pair programming. Using Cursor IDE with Claude Sonnet 3.5 and Claude Sonnet 4.5, I’ve been able to:

  • Architect complex features through conversational iteration
  • Refactor legacy Rails code into modern React patterns
  • Implement responsive designs with accessibility best practices
  • Debug issues faster with AI-powered code analysis
  • Explore new APIs and libraries with instant guidance

The AI doesn’t merely write the code for me—it’s more like having an incredibly knowledgeable pair programmer who never gets tired, can instantly recall documentation, and helps me think through architectural decisions. It’s accelerated my learning curve dramatically while maintaining code quality and best practices.

Modern Features

  • Server-side rendering for optimal SEO and performance
  • Responsive image optimization with Next.js Image component
  • Dark mode support with system preference detection
  • Real-time content updates via Sanity’s live preview
  • Advanced filtering and search capabilities
  • Progressive enhancement with graceful JavaScript fallbacks

This site continues to serve as my playground for exploring new technologies, but now it’s also a testament to how AI is transforming the way we build software. The combination of modern frameworks, headless CMS architecture, and AI assistance has made it possible to create something that would have taken months in just weeks.

Quick Stats

The collection currently contains

888

bottles

that came from

53

countries

all over the world!

Five Random Bottles

Loading bottles...

Breakdown by Country

  • US flag
    United States196
  • MX flag
    Mexico167
  • FR flag
    France103
  • XS flag
    Scotland60
  • NL flag
    Netherlands40
  • CA flag
    Canada32
  • SE flag
    Sweden32
  • IE flag
    Ireland26
  • RU flag
    Russian Federation23
  • GB flag
    United Kingdom21
  • IT flag
    Italy20
  • PL flag
    Poland17
  • DK flag
    Denmark11
  • GR flag
    Greece10
  • DE flag
    Germany9
  • ES flag
    Spain9
  • FI flag
    Finland7
  • PR flag
    Puerto Rico7
  • BB flag
    Barbados6
  • MQ flag
    Martinique6
  • AT flag
    Austria5
  • EE flag
    Estonia5
  • XE flag
    England4
  • JM flag
    Jamaica4
  • CR flag
    Costa Rica3
  • GY flag
    Guyana3
  • JP flag
    Japan3
  • NZ flag
    New Zealand3
  • ZA flag
    South Africa3
  • UA flag
    Ukraine3
  • BR flag
    Brazil2
  • CO flag
    Colombia2
  • DO flag
    Dominican Republic2
  • GT flag
    Guatemala2
  • IL flag
    Israel2
  • NI flag
    Nicaragua2
  • PE flag
    Peru2
  • TT flag
    Trinidad and Tobago2
  • AI flag
    Anguilla1
  • BS flag
    Bahamas1
  • BY flag
    Belarus1
  • BE flag
    Belgium1
  • KY flag
    Cayman Islands1
  • CN flag
    China1
  • HT flag
    Haiti1
  • HU flag
    Hungary1
  • KZ flag
    Kazakhstan1
  • NO flag
    Norway1
  • PA flag
    Panama1
  • PT flag
    Portugal1
  • SX flag
    Sint Maarten (Dutch part)1
  • SK flag
    Slovakia1
  • TR flag
    Turkey1

Breakdown by Bottle Type

66%
27%
7%
Glass (582)
Plastic (236)
Other (70)

Breakdown by Liquor Type