just dumping ideas about the realization of a public application repository:
goals:
- central Django application repository
- integration with setuptools via django-admin.py
- easy download and searchable
requirements:
- file management (aka upload)
- community features
- style
- application based (eat your own..)
future:
- Paste hooks
- SVN/Bazaar/.. hooks
implementation:
- standard setuptools procedures are used to register & upload the release of a django app to the Cheesshop
- uploaded files have all the same keyword “django.contrib”
- the homepage URL in the release.py of each django app is a sluggified url to the public repository entry (e.g. http://djangopackages.com/p/django-registration/)
- a standalone Django application scans periodically the Cheesshop and adds new applications with the keyword “django.contrib” to the repository database (can be cron, signals and/or something else) see: cheeseshop_import.py (cheeserater.com, thanks to Jakob)
- built with the common django-* application to provide standard community features (now on Google Code):
django-registration
django-openid
django-voting or django-score-voting
django-tagging
django-utils
django-contact-form
typogrify
cab (?)
django-captcha (?)
django-discussion (?)
django-profile-images (?) - needed models: Package, Owner
questions
- would it make sense to wrap the register and upload process? (e.g. django-admin.py uploadapp)
- encourage BestPracticesToWorkWith3rdPartyAppsAndMakingYoursPortable !/?
- should dependencies be shown in the repository? are owners allowed to pick?
- if needed, what is the best way to administrate the repository editorially?

Leave a Reply