Skip to content

mitchell-pioneer/wagtail-starter-kit

 
 

Repository files navigation

Wagtail Starter Kit (base)

This is a starter kit for a Wagtail project. It includes a Docker setup for local development, a basic project structure, and some useful tools and libraries.

You can use this project as a starting point for your own Wagtail projects and build upon it as needed.

Features

  • Docker Development Environment
  • Postgresql, Mysql or Sqlite3 Database
  • Frontend Node SASS and Javascript compilation
  • Pico CSS for almost classless styling
  • esbuild javascript bundler
  • Wagtail CMS v6.3

Wagtail Starter Kit

Requirements

Required:

Optional:

  • Git (optional, for version control)
  • Make (optional, for running commands)
  • NVM (optional, for managing Node versions)
  • pre-commit (optional, for running code checks)
  • UV (optional, for managing Python dependencies)

Getting started

  1. Clone this repository https://github.com/wagtail-examples/wagtail-starter-kit.git to a location on your computer
  2. Change into the project directory
  3. Run make build to build the Docker containers
  4. Run make up to start the Docker containers
  5. Run make migrate to apply database migrations
  6. Run make superuser to create a superuser
  7. Run make run to start the Django development server

Quick start

There is a make command to run most of the steps above in one go:

make quickstart

You'll need to run make superuser separately.

If you haven't made changes to the configuration the app will have available the following services for use in development:

Working with the fronend

The project uses Pico CSS for styling. It's a minmal setup that you can build on.

When you first run the project you may notice that no styling is applied. This is because the first time you run the project with make up the compiled frontend files might not be available. Just run the frontend build script and refresh the page. Read on

Working with the backend

The project uses Docker for local development. The Wagtail project is in the app directory. The project is set up to use a SQLite database by default. You can change this to use Mysql or Postgres. Read on

View the site

The site will be available at http://localhost:8000.

The Wagtail admin interface will be available at http://localhost:8000/admin.

Deployment

Currenyly there is no deployment setup included in this project. You could try this Wagtail deployment guide for some ideas.

Deployment Examples

  1. How to deploy a Wagtail site to PythonAnywhere, this does need you to have a paid account with PythonAnywhere.
  2. This example is a fork of this starter kit which has documentation on how to deploy to PythonAnywhere, using a free account.

Bonus branches

There are 2 branches that you can use to explore more features of the project:

Contributing

If you have any suggestions or improvements, please open an issue or a pull request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

About

A starter kit for a Wagtail CMS project

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • HTML 65.4%
  • Python 23.2%
  • Makefile 4.6%
  • Dockerfile 3.4%
  • JavaScript 2.7%
  • SCSS 0.7%