Boosts+

Before I reinvent a wheel, does anyone know of a FOSS web app (or module/plugin for an established framework) for creating/redeeming download codes for digital assets?

As in, a content creator can:
* create a work (Album/book/digital artwork/whatever)
* attach one or more downloadable files to it
* Generate batches of alphanumeric codes that people can redeem to download those files
* Configure limits per code (IE, number of downloads, expiration after initial redemption)

To be clear: I'm not looking for a purchasing system at all, just an arbitrary code generation/redemption system that's entirely agnostic about how a person might wind up with a code.

Bandcamp gives you 200 free codes and the option to purchase more as needed, but I'm pretty annoyed that you can only use them batches of 100; I'll be lucky to make 100 sales of *anything* online, much less IRL, so buying them in lots of 300 isn't a great deal

So I've got a "technically works but needs pretty/responsive templates for the end user, and an UI for batch generation" POC of this built in Django. As always with these things I suspect the last 20% will be the most grueling, but I'm going to try to see it through and release it as a standalone, pip-installable app anyone can just add to a Django site

Show thread

This is actually nearing 'dev release' stage; I'll probably make the repo public and deploy an instance for my own music within the next couple of days. It's a pretty-well self-contained / app that should be pretty easy to drop into a site.

Show thread

Here's the first pre-release of the "Busker" download code management app for :

github.com/tinpan-io/django-bu

There's still some polish/tests/better documentation to be done but it more or less works.

Show thread

After a few additional refinements, I got v0.6.0 of Busker deployed in the wild. It's not ready for PyPi yet, but you can install it with pip straight from the repo:

pip install git+github.com/tinpan-io/django-bu

Show thread

New in Busker 0.6.0 are a couple of signals: One that gets sent after a code is redeemed and one that gets sent when someone clicks a file download link.

In a separate custom app I cobbled together an IFTTT webhook to send myself a slack message whenever somebody redeems a code, which is pretty swell.

If you want to see it in action (and get some free banjo in the process) You can go to magicians.band/download/ and enter the code 'NA8XHNA'

OR

head straight to magicians.band/download/redeem

Show thread
Follow

Busker 0.7.0 (my tool for creating and redeeming digital download codes) is out. The only new 'feature' per se is prettier error pages, but more significantly I also finally got around to trying out coverage.py and got a bit obsessed with its super-helpful reporting. As of 0.7.0, unit test coverage is technically at 100% (Signals still need tests and there's room for improvement, but this is the most diligent I've ever been with testing and I'm pretty pleased.)

github.com/tinpan-io/django-bu

Sign in to participate in the conversation
Banjotown

The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!