Skip to content

idan/django-scrup

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

django-scrup

A django-based web receiver for Scrup which stores screencaptures on S3.

Features

  • 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 http://mydomain.com/Q1s-.

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.

Requirements

  1. Django (obviously).
  2. Boto, the python frontend to AWS

Installation

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

First, add 'scrup' to your INSTALLED_APPS. Don't forget to ./manage.py syncdb!

You'll also need to define a few values in your settings.py:

SCRUP_AWS_ACCESS_KEY

Your AWS access key.

SCRUP_AWS_SECRET_KEY

Your AWS secret key.

SCRUP_AWS_BUCKET

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 SCRUP_AWS_PREFIX is specified.

SCRUP_AWS_PREFIX

Optional. A relative pathname to a folder within the bucket. If this value is specified, uploads will be copied to http://yourbucket.s3.amazonaws.com/<SCRUP_AWS_PREFIX>

SCRUP_AWS_CNAME

Optional. 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 True and the returned URLs will be of the form http://<BUCKETNAME>/foo vs. http://<BUCKETNAME>.s3.amazonaws.com/foo.

SCRUP_THUMB_SIZE

Optional.. A two-tuple specifying the maximum dimensions of the generated thumbnail. The default is (300, 300).

Next, make sure to import django-scrup's urls. A line like the following in your urls.py should do the trick:

(r'^scrup/', include('scrup.urls')),

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 upload/<FILENAME>, where <FILENAME> is optional. Here's an example of the default URL scheme for mydomain.com:

http://mydomain.com/scrup/upload/{filename}

License

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 tree.

About

A django-based web receiver for Scrup which stores screencaptures on S3.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages