A django-based web receiver for Scrup which stores screencaptures on S3.
- Receives POST'ed images from scrup and uploads them to S3, and returns a valid URL for the image.
- Generates thumbnails and stores them at the same url, with the addition of a '-'
(minus sign) at the end of the unique identifier. For example, if your original
screenshot ends up at
http://mydomain.com/Q1s, then the thumbnail will be
There are a few things on the roadmap:
- Giving some consideration to security matters -- right now it's either HTTPS or nothing.
- Exception handling.
- A web-based timeline showing your history of screenshot uploads so you can easily find an old screenshot you've uploaded.
Getting django-scrup can be as easy as:
$ pip install django-scrup
in your favorite shell.
If you prefer to pull down and install the package yourself, you can always download or
checkout the latest release and install via the usual
python setup.py install.
Configuration and Usage
'scrup' to your
INSTALLED_APPS. Don't forget to
You'll also need to define a few values in your
- Your AWS access key.
- Your AWS secret key.
- The bucket in which django-scrup should store the uploaded screenshots. This must
be a bucket which is writeable by the AWS user identified by the above credentials.
This bucket should be solely devoted to the use of django-scrup, as the app will
likely barf if it tries to upload a file with the same name as an existing file.
By default, the uploaded files are stored in the root of the bucket, unless
A relative pathname to a folder within the bucket. If this value is specified,
uploads will be copied to
A boolean value indicating whether to use the bucketname as the domain of the
returned screenshot URL. If you've created a CNAME for your bucket, set this to
Trueand the returned URLs will be of the form
- Optional.. A two-tuple specifying the maximum dimensions of the generated
thumbnail. The default is
Next, make sure to import
django-scrup's urls. A line like the following in your
urls.py should do the trick:
Finally, plug the URL into Scrup's configuration. Obviously, this depends on your
server's domain and how you've chosen to setup
django-scrup's urls. By default,
django-scrup accepts uploads at
optional. Here's an example of the default URL scheme for
django-scrup is made available under the terms of the new BSD license. For the full
legal text, please consult the
LICENSE.txt file included in the root of the source