Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How would I package and sell a Django app?

Currently I am hosting a Django app I developed myself for my clients, but I am now starting to look at selling it to people for them to host themselves.

My question is this: How can I package up and sell a Django app, while protecting its code from pirating or theft? Distributing a bunch of .py files doesn't sound like a good idea as the people I sell it to too could just make copies of them and pass them on.

I think for the purpose of this problem it would be safe to assume that everyone who buys this would be running the same (LAMP) setup.

like image 275
Josh Hunt Avatar asked Oct 02 '08 22:10

Josh Hunt


People also ask

How much does it cost to host a Django app?

$3.95-15.95/month for Shared Hosting Plans, $49.95-149.95/month for VPS Hosting Plans, $24.95-99.95/month for Cloud Hosting Plans, and $175.00-595.00/month for Dedicated Server Plans.


1 Answers

Don't try and obfuscate or encrypt the code - it will never work.

I would suggest selling the Django application "as a service" - either host it for them, or sell them the code and support. Write up a contract that forbids them from redistributing it.

That said, if you were determined to obfuscate the code in some way - you can distribute python applications entirely as .pyc (Python compiled byte-code).. It's how Py2App works.

It will still be re-distributable, but it will be very difficult to edit the files - so you could add some basic licensing stuff, and not have it foiled by a few #s..

As I said, I don't think you'll succeed in anti-piracy via encryption or obfuscation etc.. Depending on your clients, a simple contract, and maybe some really basic checks will go a long much further than some complicated decryption system (And make the experience of using your application better, instead of hopefully not any worse)

like image 120
dbr Avatar answered Sep 25 '22 03:09

dbr