What is TicketingStack?
TicketingStack is the ticketing industry's first truly open marketplace. This project came to fruition when a friend of mine, Adam, reached out for advice on the idea he'd had for the platform. Over the next few weeks, we decided to tackle the project together, with me handling the construction of the platform itself.
The final product is the result of many "what do you think of..." and "is x y z possible..." conversations. Visually, the site's look and branding have undergone several iterations in a very short time. Personally, I'm quite chuffed with the product we had ready at launch!
What does TicketingStack do?
Let's imagine you're the proud new owner of a venue which sells tickets. Now, imagine that you don't have a solution in place for actually selling these tickets. What would you do? Your first port of call, if I were to guess, would be to search Google (or maybe ask your favourite LLM) to see what options are available. You'll likely find your way to a few articles on the topic, and maybe a few providers. Then, with a lack of choice, you'll need to make a decision.
This situation is a far cry from something most people do every year: Sorting your car insurance. I don't know about you, but when it comes to car insurance, I use broker sites or other marketplace platforms which let me see all of the options available to me alongside their costs and amenities so I can make an informed decision on the provider, both for what I need and for my wallet.
Unlike a car insurance marketplace, TicketingStack doesn't need your address, your middle name, your credit history, your childhood pet's name, or your high school nickname. Instead, TicketingStack provides a free, accessible, no-signup-required way for you to see all of your options for your location and sector. And it's not just for ticketing systems! You can also see partners and agencies, and cross-reference these against your ticketing system to know exactly who can help you.
TicketingStack makes a lot of complicated things a lot less complicated by giving you access to the information you require to make well-informed decisions.
How is TicketingStack.io built?
Under the hood, TicketingStack utilises my preferred stack for custom builds: Django/Wagtail on the backend and Vite with TailwindCSS and HTMX for the frontend.
Backend
You might be wondering: Why Wagtail? Wagtail is an excellent choice for any content-focused site that requires complex custom behaviour. It has all of the benefits of using Django, like easy templating, great ORM, and a fast workflow, with the ability to manage content as intuitively as other, more bloated systems like WordPress, which is good for writing out static pages, but otherwise isn't as flexible.
By using Wagtail, I was able to implement custom models for storing different suppliers under their own indexes. By then utilising custom taxonomies and queries for effectively managing the data, I was able to create a system that is not only functional but also incredibly flexible.
Frontend
When developing with Wagtail or Django, Vite is a great tool to handle packaging your assets into a few, minimised files. Outside of using Vite as a packaging/development server tool, I also used TailwindCSS and HTMX.
Tailwind is a very marmite solution for frontend development, largely replacing native CSS in favour of using inline utility classes within your HTML to style your elements. While I'm a full-stack developer, I started out as backend only, and during this time, I learned frontend and Tailwind at the same time. Thanks to this, I'm a fan.
HTMX is a relatively new framework for me. It's been around a while now and is tried-and-true, but this project was the first one where I realised I could utilise it properly. TicketingStack's main feature for users is the ability to filter through the listings to find the suppliers they need based on their requirements. Using HTMX, I was able to set up the filters and searching to happen in real-time with almost no additional work. No crazy JavaScript frameworks, no complex REST API backends, just reloading the portion of the page we need with HTML served directly from the server. Secure, simple, fast. If you can't tell, I'm absolutely hooked on HTMX now.
Hosting infrastructure
TicketingStack is deployed on a dedicated VPS with a lot more power than it needs. It uses PostgreSQL and Redis for database and object caching, and everything is secured behind Cloudflare for performant caching globally.
I won't go into any more detail on this now, as there's a fine line to be walked between enthusiastic sharing and opening ourselves up for vulnerabilities!
The future of TicketingStack
TicketingStack just launched, so we're just getting started. We've got lots of ideas and roadmap items for what's to come. But before we can get ahead of ourselves, we're focusing on letting the platform grow. We've had daily signups for suppliers and are pushing towards a goal of having 100 total suppliers signed up to the platform. I can't share too many details, but the future of TicketingStack is exciting. I don't know how, but I'm sure it's going to change and grow in ways I can't currently imagine.