Search is an issue for static HTML sites. Swiftype [3] and Algolia [4] look like solid options - has anyone used these in production?
[1] https://github.com/torchbox/wagtail
636 karma · joined September 10, 2010
Search is an issue for static HTML sites. Swiftype [3] and Algolia [4] look like solid options - has anyone used these in production?
[1] https://github.com/torchbox/wagtail
The project site is really focused on potential clients, but you're right that the documentation should be clearer about these basics. The README lists a 'feature' as 'Configure content types through standard Django models', which hopefully makes sense to Django developers; essentially you configure your own content types as Django models and register them as pages, where they inherit tags, slugs, publication dates etc. Users are standard Django users and can be augmented with profiles if you want. The wagtaildemo project [1] includes blog posts as a fully worked-up content type, but you don't have to include these in your project. Pages are constructed on the fly, and Wagtail is Varnish- / Squid-friendly if you have lots of traffic. FWIW we're working on a static HTML export feature which could be used for archiving or publishing to S3 etc. Edited content is stored in the database. You can intermingle CMS and UGC content - students at the Royal College of Art are uploading their own work alongside the content managed by the site's administrators, for example.
Plus it's really beautiful, light and agile :)
The areas where Wagtail departs most significantly from Mezzanine - the editor experience, moderation based workflow, content revision tracking - aren't features which can be easily tacked on to another system. Our goal is the best possible user experience for content management, and I don't think it's feasible to build that as a skin for the Django admin. In terms of structural differences, django-modelcluster [1] is a key part of what makes this user experience possible:
[1] https://github.com/torchbox/django-modelcluster
Thanks for the CMS grid link. We'll add Wagtail to it.
- a fast, intuitive content authoring experience
- preview / submit / moderate / publish workflow
- a UI which scales to very large numbers of authors, pages, images
- powerful full-text search in the front- and back-ends
- strong support for image handling (e.g. animated gifs via Wand) and media embedding (OEmbed or Embedly)
As an agency, these points are all pretty much requirements for the sites we build. We couldn't find anything else which gave us these as well as allowing us to build models and templates in plain Django, and we had a client - the Royal College of Art - who agreed to let us open source Wagtail on the back of what we developed for them.
- Tests: stung by some of the (very reasonable) criticisms after launch, we worked hard to increase our test coverage - https://coveralls.io/r/torchbox/wagtail
- Docs: still a way to go, but our documentation is much better, and now includes an editor's manual: http://docs.wagtail.io/en/latest/editor_manual/
- Translations: we were delighted by the immediate response of translators, whose work we're managing through the excellent Transifex: https://www.transifex.com/projects/p/wagtail/
- Installation: we reduced dependencies (including Sass instead of LESS, and plain JS instead of Coffeescript, so we could drop npm); we made Redis and Elasticsearch optional; we wrote one-liners for Debian and Ubuntu; we improved the installation docs; third parties contributed Docker images.
- UI: we've continued to refine the interface, with feedback from our own clients as well as helpful strangers. In 0.3 we added the 'edit bird', a toolbar allowing logged-in users to add and edit pages from the site's front-end.
- Modularisation: Wagtail now supports alternative backends for image processing (currently PIL and Wand), searching (currently Elasticsearch and SQL) and content embedding (currently OEmbed and Embedly).
- Compatibility: we're working on Python 3 and Django 1.7 support. We've recently added tox to help us test multiple versions for thoroughly.
We're also adding features, but slowly and carefully. A form-builder and scheduled publishing should be released imminently.
We're very grateful for everyone's interest and contributions, even if it's just a harsh word on HN!
On a related subject, we're starting on i18n next week, with the first localisation - Greek - following shortly.
If anyone has time to test Wagtail on Python 3 and report any problems to https://github.com/torchbox/wagtail/issues that will accelerate the work!
There are still a couple of Wagtail features which rely on contrib.admin. We have to decide whether to smarten up the contrib.admin UI or pull them into the Wagtail admin. Is your CMS available somewhere public?
No: the marketing site (http://wagtail.io/) is a single static HTML page. But we're about to add a blog, so we'll convert the whole thing into a Wagtail site, hopefully next week.
Note https://github.com/torchbox/wagtaildemo/blob/master/wagtaild... (from the example Wagtail site). To incorporate it into an existing app you'll just need to adjust the URLs so Wagtail isn't taking over the whole URL space.
Clearly this isn't enough and we're working on proper Sphinx docs which should be ready in the next few days.
Extensibility: it's just a Django app, so you can include it in your existing project, or add your own apps / views / middleware etc. There are some hooks, e.g. for including your app into the main admin navigation - see https://github.com/torchbox/wagtail/blob/master/wagtail/wagt... for an example of where a hook gets called. It's a good candidate for developer docs!
LESS is (currently) used for the admin UI, and the compiler / compressor is available to the front-end if you want it, but you can easily plug in your own compilers or use plain CSS if you prefer.
https://github.com/torchbox/wagtail/blob/master/wagtail/wagt... and https://github.com/torchbox/wagtail/commit/a77977a31cdfcdf95...
but we need more, and to make it more obvious how to run them. You're right that we have to do more to attract contributors. In the meantime we're offering t-shirts for pull requests...
We already support LDAP auth, and CAS and / or Shibboleth is on the roadmap for the near future. More importantly, we'll have proper Sphinx docs soon, with details of the features that are already available.
Thanks for the congrats!
Right, that doesn't sound too hard, we'll aim to add that.
> I see that the npm dependency might draw away people, maybe provide and add-on that depends on npm and makes it easy to integrate CoffeeScript, LESS, SASS?
Or perhaps we'll just ship the compiled CSS / JS and provide instructions for people who want to use LESS etc in their Wagtail sites.
https://www.rspb.org.uk/wildlife/birdguide/families/pipits.a...
The CoffeeScript and LESS integration is a tricky one. We like LESS but we're worried that npm / lessc is an annoying dependency, and we're considering switching to SASS / SCSS, which has a pure-Python compiler, unlike LESS. Opinions very welcome.
If you have Vagrant and a reasonable internet connection, the easiest way to try out the admin UI is to clone the demo site at https://github.com/torchbox/wagtaildemo, which includes a range of example content types.
Someone used its API (/api/json) to make a load-sensitive kettle: