I built my own DIY Patreon
I created the Cult of Lightbulbs, my own DIY Patreon, as an affordable and direct way to engage with fans.
And it wasn’t that hard. And it costs less than $8/month or so to run (and you could do it even more cheaply if you wanted). And I completely am in control of it. It’s built intentionally to be much more aligned to my guiding principles for creative independence: simple, affordable yet elegant, transparent, easy to maintain, almost no lock-in, arguably the most direct and open way to connect with fans.
I call it: the CULT OF LIGHTBULBS

Here’s a quick summary of how I put it together & how it all works:
I created a Faircamp instance to host my entire catalog of music (including patron-exclusive content, old demos, and other stuff), which was already organized on my computer, and created text files containing each release’s metadata & liner notes
I used Faircamp’s command-line tool to “build” and preview the resulting music site
I uploaded it to Backblaze B2
I created a Cloudflare worker that renders the B2-hosted files as a secure static website, accessed via cult.kidlightbulbs.com
I took the Faircamp instance’s built-in RSS feed and integrated it with my Buttondown-hosted newsletter, which automatically notifies my fans & patrons of any new releases I upload to the Faircamp instance
This also triggers a release notification in my (tiny, fledgling) Discord server
Fans of mine can now support me directly via a subscription or “tip-jar” style payment using Stripe, which gets them access to exclusive updates, and download access to everything on the Faircamp instance.
A cool thing is that this is quite affordable — about $92/year. It would be almost free if I wasn’t paying Buttondown to handle the email-newsletter part (there are open-source alternatives here that I haven’t looked into yet). But, the costs are the following:
Buttondown: $90/year, or $9/month (I pay yearly)
Backblaze B2: Effectively ~$1.40/year. Backblaze charges $6/month per terabyte of storage for their B2 storage service, and it’s pro-rated based on usage. My whole Faircamp instance is about 18GB in size, so I’m paying pennies per month and only invoiced when I accrue about 50¢ in fees.
Faircamp itself: free
Cloudflare: free + annual domain cost if you’re using them as a domain registrar (~$10-$20/year)
Stripe: free to setup, 2.9% + 30¢ per transaction
BBEdit: free (full version is paid, but you don’t need it)
One-off payments for helpful (but optional) apps: Meta tag editor ($22) and Transmit ($45)
Faircamp
The whole thing is made possible by Faircamp, an open-source music site builder that can be extended in a number of different ways. Faircamp is developed by one guy, Simon (with help/input from a number of passionate contributors), and publicly adheres to the following principles:
Personal Plain Small Simple Light Fast Reduced Elegant Stable Low/No-Maintenance Free Independent Privacy-Respecting Standards-Conforming
This immediately resonated with me. Not only is a standard Faircamp site really beautiful and simple, but it’s universally accessible (meaning basically anyone can use it), privacy-friendly and aligns with my values. Yes, you need to know a little bit of your way around a coding language, but it’s really quite simple to make work, and there is a ton of documentation out there to help with both the whole process of launching your own Faircamp instance and specific use cases.
Installing Faircamp is not like installing a normal app – you need to use a specific installer file, or in some cases, the command line, to install it on your computer. But the great thing is that Faircamp is well-documented, and can walk you step-by-step through this process.
With a little bit of work (really, it’s writing + copy/pasting some code), I was able to write simple metadata files (using the .eno file extension) for each of my albums as well as for the music catalog itself. For each release, you can define whether you want to allow downloading at all, whether to hide it behind an exclusive download code, or offer a “soft paycurtain” (ie. encourage payment but not require it). Because I already offer all my music for pay-what-you-want, this worked well for me:
All my public releases are available with a soft paycurtain. I don’t require payment, but encourage it via Stripe or by subscribing, or offering a link out to Bandcamp if you’d rather buy the release there.
All my patron-exclusive releases are also available to stream in a compressed format; patrons get an exclusive download code that allows them to download in whatever format (including lossless audio formats) they like.

Here’s an example of what the .eno metadata file looks like for my latest album INFINITE NORMAL:

The resulting album page looks a like this (at the top):

At the catalog level, I added widgets to subscribe to my newsletter, take payments, and (ethically) track visitors and clicks using Simple Analytics, which I already use to track visitors on this website. The “about” area looks like this:

Once you structure your release catalog in a way that matches Faircamp’s guidance (which is well-documented in the online manual), you can use the command line to “build” your site, and even preview it locally using the command faircamp -p in the folder where your catalog lives. The command line might feel scary, but I assure you it’s pretty easy to wrap your head around (or at least run specific commands by following directions) and quite powerful. A secret weapon I found was that, in macOS, you can open up the command line directly from your music catalog folder by right-clicking, going to the “Services” menu, and choosing “New Terminal at Folder.” This is where you can run that preview command.
I’ll credit IncognitoThief, whose documentation around getting a Faircamp site online with Backblaze got me through this.
I basically followed their instructions line-by-line, and would recommend doing the same – with the exception that I used an app called Transmit to handle uploading the entire Faircamp build to Backblaze’s B2 storage service. I like this app because it’s not just a file uploader/manager, but it can do cool things like merge or compare differences between files.
Backblaze and Cloudflare – the two services I’m using to “host” my Faircamp site – are both free to sign up, generally reputable companies, and take care of the two main parts of running this Faircamp site:
Backblaze’s B2 service is where all the files live
Cloudflare renders those files available at a URL anyone can access, and makes it secure. (It’s also where I manage my domains generally.)
Theoretically I could also host this with any other hosting service, but I chose Backblaze B2 because it’s quite cheap and reliable, and not one of the giant tech firms that offer similarly cheap web storage.
Some apps you’ll need to use to get this working (all are free):
A text/code editor. All computers offer one built in (eg. Notepad on Windows, TextEdit on macOS), but I’d recommend a better one. Fortunately better ones are often free or cheap – I got the free version of BBEdit from the Mac App Store, though Sublime Text and Vim are also good options. This will allow you to create the data files for every release you want to have on your Faircamp instance.
A command line interface. Again, always built into your computer. On macOS, it’s called Terminal.
Optional but recommended:
An audio file tag editor. You can usually edit audio tags in an audio editor like Audacity or Logic, though a dedicated editor might make this easier if you’re compiling older recordings. I came across this excellent one called Meta in the App Store, which cost $22.
A file server app. You can upload your Faircamp site on Backblaze’s website, or the command line, but I found that using Transmit ($45), or even a free alternative like Filezilla, was easier.
Now, I’ve got the Faircamp site set up. This will serve as my public music site, but a patron offering involves a lot more stuff – uploading “exclusive” content and offering it exclusively to patrons in some way. Let’s move on:
Integrating with my newsletter
I run my little newsletter on a service called Buttondown. It’s wonderfully minimal and powerful, and run by a small, independent, transparent team.
I’ve already been paying for Buttondown’s basic tier because I (amazingly, confusingly) have more than 100 people subscribed to my email list. The basic tier includes a feature called RSS-to-email, which is one of the most quietly powerful features I’ve ever experienced on the Internet. It allows you to take any RSS feed (something that is available by default for almost every blog, newsletter, YouTube channel, subreddit, and more) and have Buttondown listen for new entries, which then can automatically make up the contents of an email sent to your subscribers.
I’ve already been using this to auto-send blog posts I write here to subscribers; now I’ve set up a second RSS feed from the Kid Lightbulbs Faircamp instance to automatically put together an email anytime I add something new to it. These can serve as “release announcements” with almost no additional work from me – write up the release liner notes, publish to Faircamp, and then a few hours later it’s announced to my subscribers.
It’s worth noting here that Buttondown is not the only newsletter service that offers this: Mailchimp, Mailerlite, Kit (fka ConvertKit) and several others all can do a similar thing, though have varying subscription costs of their own. I like Buttondown because it’s relatively cheap and aligns with my guiding principles, but doesn’t require me to deal with hosting and maintaining an email delivery service myself. If you wanted to go even further down the DIY path, you could consider self-hosting an email newsletter using something like Sendy or Listmonk.
Handling the money
It turns out that Buttondown also supports paid subcriptions, and in a really curious way: It doesn’t have its own subscription feature, but connects directly to subscription products you can set up in Stripe, the ubiquitous payments platform. I’ve already experimented with taking payments directly via Stripe to sell my albums in a DIY fashion – so building a subscription system on top of this was not too much further of a step.
Note that Buttondown requires the Basic plan ($90/year) to set up paid subscriptions.
Here’s how you do it:
Set up one (or multiple, if you want to offer multiple subscription tiers) “recurring payment” product(s) in Stripe. You can refer to my previous post for the specific steps, just use the recurring option instead of one-off payment.
Go into Buttondown -> Settings -> Paid subscriptions, and connect your Stripe account.
Once connected, select the Stripe product(s) you just set up and save.
Buttondown will now “listen” for any customers of mine who are on this subscription actively, and treat them as a “paid subscriber”. I can then send newsletter emails specifically to this cohort of folks on my email list.
Now, anytime I release something to Faircamp specifically intended for patrons, I can specifically notify my patrons with their exclusive download code (created all the way up in the Faircamp section above) if they’d like to download. (I could also separately notify non-patrons periodically about these releases to encourage them to consider a subscription.)
One thing I’ll note here is that I set this up this way to attempt to replicate the functionality of a Bandcamp or Patreon-style subscription scheme. You don’t need to do this. Faircamp allows you to set up other payment options quite easily in the .eno metadata of a release. You could even put in a Venmo link or QR code in as your suggested payment terms if you wanted, and skip this setup process entirely.
That’s the whole thing in a nutshell. I hope you found this at least mildly interesting, and/or might consider subscribing if you like my music & musical journey. If you’re a fellow artist and are looking for a way to have fans support you without the weird incentives and lock-in of a big tech company (or several), it’s worth considering this approach.
Talk soon ✌️Brandon