This open source project is for my book Build Blog With Wagtail CMS
You can support my work by purchasing the ebook
Other books written by me
- The Definitive Guide to Next.js and Wagtail
- Build SPA with React and Wagtail
- The Definitive Guide to Hotwire and Django
This book will teach you how to build a modern blog with Wagtail CMS
By the end of this course, you will be able to:
- Understand
Dockerand useDocker Composeto do development - Use
python-webpack-boilerplateto jump start frontend project bundled by Webpack. - Install
Tailwind CSSas the style solution. - Install
Stimulus, understand how it works and write Stimulus controllers. - Learn how
Dark Modeworks in Tailwind CSS and use Stimulus controller to toggle the dark mode. - Understand the benefit of the healthy Stimulus ecosystem by reusing 3-party Stimulus controller.
- Create blog models to work with Wagtail.
- Use
PDBandDjango shellto debug, test code and check data in terminal. - Learn to use
RoutablePageand addDateto the post url. - Build
Paginationcomponent and correctly handle querystring. - Make the blog supports writing in
MarkdownandLatex. - Create contact page using Wagtail
FormBuilder - Build menu, meta tags, sitemap, robots.txt for better SEO.
- Build comment system based on
django-contrib-commentswhich supportGeneric Relations - Use
Tribute.js,Axiosto addMentionandEmojisupport to the comment form. - Deploy the production app to DigitalOcean
- Python 3.10
- Django 4
- Wagtail 4
- Stimulus 3
- Tailwind CSS 3
$ git clone https://github.com/AccordBox/wagtail-tailwind-blog
$ cd wagtail-tailwind-blogFirst, let's build frontend assets, please make sure node is available.
$ node -v
# install dependency packages
$ npm install
# launch webpack dev server and keep it running
$ npm run watchYou need Docker and Docker Compose and you can install it here Get Docker
# build and launch app
$ docker-compose up --buildNow open a new terminal to import data and change password.
$ docker-compose exec web python manage.py load_initial_data
$ docker-compose exec web python manage.py changepassword adminNow you can check on
The demo is also online if you want to check.
