Wagtail is an open source content management system built on Django
Go to file
Matt Westcott 85a4a9ebf7 Release note for #10939 in 5.1.2 2023-09-22 18:34:32 +01:00
.circleci Remove no_output_timeout and only use 2 CPU cores for running tests on CircleCI 2023-08-04 12:33:01 +01:00
.github Add test run on opensearch 2023-09-19 10:25:12 +01:00
.tx Upgrade config for API v3 2023-01-18 14:13:30 +00:00
client Set title line-height in em rather than rem 2023-09-21 09:51:51 +01:00
docs Release note for #10939 in 5.1.2 2023-09-22 18:34:32 +01:00
etc Release note / additional fix for #6339 2020-10-05 14:25:33 +01:00
scripts Update latest.txt for 5.1.1 2023-08-14 15:40:25 +01:00
wagtail Allow BaseSiteSetting instances retrieved via for_request to be pickled 2023-09-22 18:32:01 +01:00
.coveragerc Add concurrency setting to coverage configuration 2023-08-02 14:45:54 +01:00
.editorconfig Add and configure black 2022-02-15 13:06:17 +00:00
.eslintignore Prettier/Eslint - ignore storybook build folder - see #10089 2023-02-15 23:42:13 +10:00
.eslintrc.js Update eslint configs & align linting changes 2023-08-02 21:00:25 +10:00
.git-blame-ignore-revs Add black reformatting commit SHA to .git-blame-ignore-revs 2022-02-15 13:12:22 +00:00
.gitignore Add concurrency setting to coverage configuration 2023-08-02 14:45:54 +01:00
.nvmrc update node usage to node 18 2022-10-28 06:18:58 +10:00
.pre-commit-config.yaml Update linter versions in package.json, setup.py and pre-commit hooks 2023-09-21 17:25:08 +01:00
.prettierignore Prettier/Eslint - ignore storybook build folder - see #10089 2023-02-15 23:42:13 +10:00
.readthedocs.yml Update ReadTheDocs settings to v2 to resolve urllib3 issue in linkcheck extension 2023-05-08 22:11:18 +01:00
.semgrep.yml Enforce the use of a single string formatting mechanism for translation source strings 2022-11-26 11:00:05 +01:00
.squash.yml Use bakerydemo as project in Squash (#10721) 2023-07-28 13:55:50 +02:00
.stylelintignore Upgrade to latest Sass and stylelint configuration, with needed refactorings 2022-02-01 07:36:17 +10:00
.stylelintrc.js Update npm scripts 2023-08-02 21:03:27 +10:00
CHANGELOG.txt Release note for #10939 in 5.1.2 2023-09-22 18:34:32 +01:00
CODE_OF_CONDUCT.md fix spelling - behaviour vs behavior 2022-06-02 07:56:05 +10:00
CONTRIBUTORS.md Allow subclasses of PagesAPIViewSet override default Page model 2023-09-20 08:13:19 +10:00
LICENSE Makes LICENSE recognized by GitHub. 2019-06-05 15:18:50 +02:00
MANIFEST.in Wagtail packaging fixes (#8030) 2022-02-28 22:35:10 +00:00
Makefile Move semgrep to after other linting checks 2023-08-02 20:59:54 +10:00
README.md Fix theme of logo in README.md 2023-09-21 20:56:42 +10:00
SPONSORS.md SPONSORS - update http links to https 2023-06-01 16:50:03 +01:00
codecov.yml chore(ci): add informational Codecov status checks 2022-05-13 08:16:12 +10:00
conftest.py Move tests to test 2022-03-17 17:19:59 +00:00
package-lock.json Update linter versions in package.json, setup.py and pre-commit hooks 2023-09-21 17:25:08 +01:00
package.json Update linter versions in package.json, setup.py and pre-commit hooks 2023-09-21 17:25:08 +01:00
prettier.config.js Update npm packages (linting/testing/formatting) 2023-08-02 21:00:25 +10:00
ruff.toml Drop support for Python 3.7 2023-07-14 13:06:41 +01:00
runtests.py Add Elasticsearch 8 to test matrix (but keep using the v7 python library, as a baseline test) 2023-07-17 16:18:37 +01:00
setup.cfg Switch to ruff for flake8 / isort code checking (#10324) 2023-04-21 11:58:27 +01:00
setup.py Update linter versions in package.json, setup.py and pre-commit hooks 2023-09-21 17:25:08 +01:00
tailwind.config.js Auto-generate docs for most important design tokens 2022-04-23 01:05:27 +01:00
tox.ini Install elasticsearch-py v8 for testing against Elasticsearch 8 2023-07-17 16:18:37 +01:00
tsconfig.json Re-enable `strictPropertyInitialization` in tsconfig 2023-01-27 11:33:49 +10:00



Build Status License Version Monthly downloads follow on Twitter

Wagtail is an open source content management system built on Django, with a strong community and commercial support. It's focused on user experience, and offers precise control for designers and developers.

Wagtail screenshot

๐Ÿ”ฅ Features

  • A fast, attractive interface for authors
  • Complete control over front-end design and structure
  • Scales to millions of pages and thousands of editors
  • Fast out of the box, cache-friendly when you need it
  • Content API for 'headless' sites with decoupled front-end
  • Runs on a Raspberry Pi or a multi-datacenter cloud platform
  • StreamField encourages flexible content without compromising structure
  • Powerful, integrated search, using Elasticsearch or PostgreSQL
  • Excellent support for images and embedded content
  • Multi-site and multi-language ready
  • Embraces and extends Django

Find out more at wagtail.org.

๐Ÿ‘‰ Getting started

Wagtail works with Python 3, on any platform.

To get started with using Wagtail, run the following in a virtual environment:

Installing Wagtail

pip install wagtail
wagtail start mysite
cd mysite
pip install -r requirements.txt
python manage.py migrate
python manage.py createsuperuser
python manage.py runserver

For detailed installation and setup docs, see the getting started tutorial.

๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ฆ Whoโ€™s using it?

Wagtail is used by NASA, Google, Oxfam, the NHS, Mozilla, MIT, the Red Cross, Salesforce, NBC, BMW, and the US and UK governments. Add your own Wagtail site to madewithwagtail.org.

๐Ÿ“– Documentation

docs.wagtail.org is the full reference for Wagtail, and includes guides for developers, designers and editors, alongside release notes and our roadmap.

For those who are new to Wagtail, the Zen of Wagtail will help you understand what Wagtail is, and what Wagtail is not.

For developers who are ready to jump in to their first Wagtail website the Getting Started Tutorial will guide you through creating and editing your first page.

Do you have an existing Django project? The Wagtail Integration documentation is the best place to start.

๐Ÿ“Œ Compatibility

(If you are reading this on GitHub, the details here may not be indicative of the current released version - please see Compatible Django / Python versions in the Wagtail documentation.)

Wagtail supports:

  • Django 3.2.x, 4.1.x and 4.2.x
  • Python 3.8, 3.9, 3.10 and 3.11
  • PostgreSQL, MySQL and SQLite (with JSON1) as database backends

Previous versions of Wagtail additionally supported Python 2.7, 3.7 and earlier Django versions.

๐Ÿ“ข Community Support

There is an active community of Wagtail users and developers responding to questions on Stack Overflow. When posting questions, please read Stack Overflow's advice on how to ask questions and remember to tag your question "wagtail".

For topics and discussions that do not fit Stack Overflow's question and answer format we have a Slack workspace. Please respect the time and effort of volunteers by not asking the same question in multiple places.

Join slack community

Our GitHub discussion boards are open for sharing ideas and plans for the Wagtail project.

We maintain a curated list of third party packages, articles and other resources at Awesome Wagtail.

๐Ÿง‘โ€๐Ÿ’ผ Commercial Support

Wagtail is sponsored by Torchbox. If you need help implementing or hosting Wagtail, please contact us: hello@torchbox.com. See also madewithwagtail.org/developers/ for expert Wagtail developers around the world.

๐Ÿ” Security

We take the security of Wagtail, and related packages we maintain, seriously. If you have found a security issue with any of our projects please email us at security@wagtail.org so we can work together to find and patch the issue. We appreciate responsible disclosure with any security related issues, so please contact us first before creating a GitHub issue.

If you want to send an encrypted email (optional), the public key ID for security@wagtail.org is 0xbed227b4daf93ff9, and this public key is available from most commonly-used keyservers.

๐Ÿ•’ Release schedule

Feature releases of Wagtail are released every three months. Selected releases are designated as Long Term Support (LTS) releases, and will receive maintenance updates for an extended period to address any security and data-loss related issues. For dates of past and upcoming releases and support periods, see Release Schedule.

๐Ÿ•› Nightly releases

To try out the latest features before a release, we also create builds from main every night. You can find instructions on how to install the latest nightly release at https://releases.wagtail.org/nightly/index.html

๐Ÿ™‹๐Ÿฝ Contributing

If you're a Python or Django developer, fork the repo and get stuck in! We have several developer focused channels on the Slack workspace.

You might like to start by reviewing the contributing guidelines and checking issues with the good first issue label.

We also welcome translations for Wagtail's interface. Translation work should be submitted through Transifex.

๐Ÿ”“ License

BSD - Free to use and modify for any purpose, including both open and closed-source code.

๐Ÿ‘ Thanks

We thank the following organisations for their services used in Wagtail's development:

BrowserStack provides the project with free access to their live web-based browser testing tool, and automated Selenium cloud testing.

Squash provides the project with free test environments for reviewing pull requests.

Assistiv Labs
Assistiv Labs provides the project with unlimited access to their remote testing with assistive technologies.