Tutorial¶
This tutorial will guide you through creating your first blog and podcast with Django Cast.
Your First Blog¶
After completing the Installation, let’s create your first blog.
Creating a Blog¶
Access the Wagtail Admin
Navigate to http://localhost:8000/cms/ and log in with your credentials.
Navigate to Pages
Click on “Pages” in the sidebar. You’ll see the page tree with your site’s root.
Add a Blog
Click “Add child page” next to the root page
Select “Blog” from the page type options
Fill in the required fields:
Title: Your blog’s name (e.g., “My Tech Blog”)
Slug: URL-friendly version (e.g., “tech-blog”)
Author: Your name
Email: Contact email
Description: Brief description of your blog
Configure Blog Settings
Comments enabled: Configure via Django Admin (http://localhost:8000/admin/)
Template base dir: Choose from pre-installed themes (“bootstrap4” or “plain”)
Publish
Click “Publish” to make your blog live
Your blog is now accessible at http://localhost:8000/tech-blog/
Creating Your First Post¶
Navigate to Your Blog
In the page tree, find your blog and click on it.
Add a Post
Click “Add child page”
Select “Post” from the page type options
Fill in Post Details
Title: Your post title
Slug: URL slug (auto-generated from title)
Categories: Select or create categories
Tags: Add relevant tags
Add Content
The body field has two sections:
- Overview Section
Brief summary that appears on the blog index page
- Detail Section
Full article content that appears on the post page
For each section, you can add:
Heading: Section headers
Paragraph: Rich text content
Image: Single responsive image
Gallery: Multiple images with lightbox
Code: Syntax-highlighted code blocks
Video: Embedded video files
Audio: Embedded audio with player
Embed: External content (YouTube, etc.)
Add Media
To add an image:
Click the “+” button in a content section
Choose “Image”
Upload or select an existing image
Add alt text for accessibility
Preview and Publish
Use “Preview” to see how your post looks
Click “Publish” when ready
Your post is now live!
Your First Podcast¶
Django Cast makes it easy to create a podcast with full iTunes support.
Creating a Podcast¶
Add a Podcast Page
From the root page, click “Add child page”
Select “Podcast” from page types
Configure Podcast Settings
Basic Information:
Title: Your podcast name
Slug: URL slug for the podcast
Author: Podcast host name
Email: Contact email
Description: Podcast description
iTunes Settings:
iTunes Artwork: Upload 3000x3000px image
Publish Your Podcast
Click “Publish” to create your podcast page.
Creating Your First Episode¶
Navigate to Your Podcast
Find your podcast in the page tree.
Add an Episode
Click “Add child page”
Select “Episode” from page types
Episode Details
Title: Episode title
Podcast Audio: Upload your audio file (required)
Keywords: Episode-specific keywords
Explicit: Episode content rating: - Yes: Content is suitable for the age group it’s rated for - No: Content does not contain anything explicit and is safe for general audiences - Explicit: Contains adult content or strong language, not recommended for younger audiences
Block: Check to prevent iTunes distribution
Add Show Notes
Use the body field to add:
Episode description (overview)
Detailed show notes (detail)
Links and resources
Embedded images or code
Upload Audio
Click “Choose audio” in Podcast Audio field
Upload your audio file (MP3, M4A, OGG, or OPUS)
The system will automatically extract duration
Each audio object can have multiple files in different formats
Add Chapters (Optional)
After publishing, you can add chapter marks:
Go to Settings → Audio in admin
Find your audio file
Add chapter marks with timestamps
Publish Episode
Review all settings
Click “Publish”
Episode appears on podcast page and in RSS feed
RSS Feed Setup¶
Your podcast RSS feeds are automatically generated for each audio format:
MP3 Feed:
/feed/podcast/mp3/rss.xmlM4A Feed:
/feed/podcast/m4a/rss.xmlOGG Feed:
/feed/podcast/oga/rss.xmlOPUS Feed:
/feed/podcast/opus/rss.xml
Each feed contains episodes with audio files in the corresponding format. Submit your preferred feed URL to podcast directories like Apple Podcasts, Spotify, etc.
Working with Media¶
Images¶
Supported formats: JPEG, PNG, AVIF, WebP
Automatic optimization: Responsive images using picture element
Organization: Create collections for better management
Galleries¶
Click “+” and select “Gallery”
Select multiple images
Choose layout:
Default: Web component with client-side lightbox
HTMX: Server-side rendered lightbox
Audio¶
Formats: Upload in any format, provide multiple for compatibility
Player: Podlove Web Player with chapters and speed control
Transcripts: Add VTT or JSON transcripts for accessibility
Video¶
Upload: Browser-compatible formats (MP4, WebM)
No conversion: Upload videos in formats browsers can play
Embedding: Use video block in content
Tips and Tricks¶
Content Organization¶
Categories: Use for major topic areas
Tags: Use for specific topics
Series: Create related post series
Theme Customization¶
Choose from pre-installed themes (“bootstrap4”, “plain”)
Install new themes via PyPI
Select theme in blog’s “Template base dir” setting
Next Steps¶
Explore StreamField Blocks for advanced content
Learn about Templates / Themes for customization
Set up Comments for engagement
Configure Social Media integration
Deploy to production (see Deployment)