Original Admin UI proposal: http://groups.google.com/group/django-developers/browse_thread/thread/1edf77c9c8b1101d/4ecda5e4c982c7e1 In general: * Commits should be broken up into a series of patches -- 1 for each incremental improvement or feature (e.g. autocomplete, selector inlines, etc). * All the JS for the admin should be minified, but we need to ship maximized versions too, for ease of editing, and then have a build process do the minification. * Note: This may be better saved for last. * Updating the old Javascript to use jQuery is an end goal, but not one required to get admin-ui merged. * Document where js libs come from for ease of checking on new versions and finding full source. Suggested individual patches. 1. An `OrderField` as suggested here: http://groups.google.com/group/django-developers/browse_thread/thread/480662576c49edd/3aca77d981804528. 2. Add `django.forms.formset.empty_form` method. 3. Admin Inline updates, including * Dynamically add new inline on page * Drag and drop inline re-ordering if `order_field` provided on `ModelAdmin` class. 4. Selector Inlines 5. ForeignKey autocomplete 6. ManyToMany autocomplete Summary of commits on the soc2009/admin-ui branch: 1. jQuery itself. 2. Stacked Inline add new inline dynamically. 3. Selector Inlines (based on Wilson Miner's mockup http://media.wilsonminer.com/images/django/related-objects-stacked.gif) 4. Tabular Inline ordering. Given an order_field on the `TabularInline` admin object. 5. models.fields.!OrderField added, subclass of !IntegerField with default=0. 6. django.forms.formsets grew a `empty_form` method with prefix set to `__prefix__` which Javascript replaces with a value when dynamically adding new inlines. 7. !ForeignKeySearchInput widget, which does autocompletion on Foreign key fields. 8. !ManyToManySearchInput, autocompletion for m2m fields. Possibly related tickets: * #5273 * #4926