Yes, this is possible. As far as I'm aware there aren't many themes publicly available. I modify the default theme for most of our clients. It's not an extensive overhaul, but just something to make it feel like a more branded experience for our clients.
First, you'll want to install the Wagtail styleguide.
INSTALLED_APPS = (
...
'wagtail.contrib.styleguide',
)
You can read more about the style guide here: http://docs.wagtail.io/en/latest/contributing/styleguide.html
Then you'll be able to go into your admin > Settings > Styleguide (Link will look something like this: http://localhost:8000/admin/styleguide/)
Then what I do is right click on the section I want to style, click "inspect" in my browser and view the elements and styles I want to edit. This seems to be the fastest way to style what you're looking for.
Before you start styling, you'll need a CSS file for your admin. For this, we can use a hook.
from django.contrib.staticfiles.templatetags.staticfiles import static
from django.utils.html import format_html
from wagtail.core import hooks
# Register a custom css file for the wagtail admin.
@hooks.register("insert_global_admin_css", order=100)
def global_admin_css():
"""Add /static/css/wagtail.css."""
return format_html('<link rel="stylesheet" href="{}">', static("css/wagtail.css"))
You can read more about Wagtail hooks here: http://docs.wagtail.io/en/latest/reference/hooks.html
This will add a <link />
element to the <head>
of your admin pages, after the main css files are loaded.
Now all you need to do is create a new file called wagtail.css, make sure it's inside your /static/css/ directory (ie. /static/css/wagtail.css) and you can overwrite all the styles. Just remember to reference the style guide!
Edit: I've since made a video on this subject if you want to dive deeper into admin customization. https://www.youtube.com/watch?v=5flSOmcWGfk&list=PLMQHMcNi6ocsS8Bfnuy_IDgJ4bHRRrvub&index=44