Ok so today while randomly surfing the web (StumbleUpon) I came across
4 blog posts in a row about CDNs and scripts people had written for
managing them. This gave me the idea to write an automated CDN
management tool for django that will automatically optimize and upload
new versions of a file to the CDN when you upload it to your host.
Also it will let you specify file groups which will automatically
merge all files in the group into a single file before optimizing and
uploading, which will let you use good development techniques of
separate files while still maintaining good web site techniques of
having all css/js files as a single file to speed up downloads.

I am in the planning / design phase only right now so this thread is
for brainstorming by the masses and a solicitation for people
interested in potentially helping on the project.

==== Random Brainstorm Data ====
manage.py update_cdn
    needs to scan all CDN directories (including subfolders)
    needs to run optimizations on each modified file
    needs to upload the optimized file to the correct cdn

admin-ui
    needs to be able to select optimizations (including None) for files & groups
    need to set far futue expire header, E-TAG header, and other best
practice headers (if the CDN supports header modification)
    needs to specify grouped files & order of join (get joined prior
to optimizations)
    needs an update button to automatically run the management command

template tag
    list files & groups (eg {% CDN
files="js/file1.js,js/file2.js,css/stylesheet.css"
groups="merged1.js,merged2.js" [name="cdn name from settings] %}, if
no name is set it assumes default is the name)
    if debug is true load local versions and non merged files

Settings
    CDN = [{'NAME': {'provider': "", 'directories': [],
'username/api': "", 'password/key': ""}}]

CDNs I want to support
    all in libcloud (http://incubator.apache.org/libcloud/index.html)
    Amazon s3
    Amazon CloudFront

Optimizations I wish to support
    closure-compiler (http://code.google.com/p/closure-compiler/)
    yui compressor
    jsmin
    cssutils
    gzip


Dj Gilcrease
OpenRPG Developer
~~http://www.openrpg.com

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-us...@googlegroups.com.
To unsubscribe from this group, send email to 
django-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en.

Reply via email to