Hi!
I’ve finally put together a draft proposal.
My proposal is centered around @tom ’s existing package django-admin-keyboard-shortcuts and bringing it into core while building a command palette on top.
gsoc25-proposal.md
### [GSOC 25 Proposal] Django Admin: Add Keyboard Shortcuts and Command Palette
# Motivation
Django Admin currently depends heavily on mouse interactions, which slows down tasks like navigating between models, searching and selecting records, and performing bulk actions.
While Django follows standard accessibility practices, the admin still isn't great for keyboard-first users. Tabbing through various elements to reach the desired field takes way too many steps, slows things down and makes it tiring to use. I think its important to address this accessibility gap. Platforms like gmail and github prove how keyboard shortcuts and command palettes speed up daily work: navigating or composing mails with shortcut keys or jumping between pull requests from command palettes are such examples.
In Django, there is already an [accepted ticket](https://code.djangoproject.com/ticket/16521), a [brief discussion on the forum](https://forum.djangoproject.com/t/django-admin-save-shortcuts/27016) and an experimental third-party package [`django-admin-keyboard-shortcuts`](https://github.com/knyghty/`django-admin-keyboard-shortcuts`) developed as a result. However here are two problems: firstly, the implementation and design choices has not been made certain and secondly the existence of such third party package would not be feasible as it overrides base template (see [relevant issue](https://github.com/rajasimon/django-command-palette/issues/2#issuecomment-1318666063)) hence there is a need for it to be merged into core.
This proposal aims to improve that experimental package and bring it into Django core, while also building a command palette on top to make navigation and actions more convenient.
# Proposal
Note that `django-admin-keyboard-shortcuts` is only a Proof-Of-Concept and lot of work still needs to be done to get it into mergeable state. The proposal addresses current issues to be fixed and new features to added in the following sections.
This file has been truncated. show original
Any feedback from the admin and accessibility folks is really appreciated
1 Like
Sorry I might’ve deleted the previous link while revising the final one :(…
Putting the revision here incase someone stumbles upon a broken link for now: GSoC Final Proposal