I77537 StackDocsProgramming
Related
Python 3.15.0 Alpha 6: Everything You Need to KnowGoogle Gemini API Webhooks: Eliminating Polling for Long-Running AI JobsAI Adoption Surges Among Developers, but Trust Remains Stumbling Block, New Survey RevealsGo 2025 Developer Survey Now Open – Deadline September 30Decoding JavaScript Dates: Why They Break and How Temporal Fixes ItRoq Q&A: Building Static Sites with Quarkus at Go-Like SpeedsNVIDIA Unveils Nemotron 3 Nano Omni: One Model for Vision, Audio, Language – 9x Efficiency BoostCoordinating Multiple AI Agents at Scale: Lessons from Intuit’s Engineering Team

How to Contribute to the Python Insider Blog on GitHub

Last updated: 2026-05-06 07:51:47 · Programming

Introduction

The official Python Insider Blog has moved to a new home at blog.python.org, powered by a Git repository. This shift makes contributing easier than ever—no more needing a Google account or wrestling with Blogger's editor. Now, if you can open a pull request, you can write a post. Whether you want to announce a new Python release, share a core sprint update, or discuss governance changes, this guide will walk you through the process of submitting your first blog post. The entire blog content lives as Markdown files in the python-insider-blog GitHub repository, and all 307 legacy posts from Blogger have been migrated. Old URLs automatically redirect, and RSS subscribers just need to point to https://blog.python.org/rss.xml. Ready to contribute? Let's get started.

How to Contribute to the Python Insider Blog on GitHub

What You Need

  • A GitHub account (free) to fork and submit pull requests.
  • Basic familiarity with Git (or willingness to use GitHub's web interface).
  • A text editor (VS Code, Notepad++, Vim, or any Markdown-capable editor).
  • Optional: Node.js and npm if you want to preview the blog locally (Astro setup).
  • Understanding of Markdown (simple syntax for formatting text).

Step-by-Step Guide

1. Fork the Repository

  1. Navigate to https://github.com/python/python-insider-blog.
  2. Click the Fork button in the top-right corner. This creates a copy of the repository under your own GitHub account.
  3. Clone your fork to your local machine using:
    git clone https://github.com/YOUR_USERNAME/python-insider-blog.git

2. Create a New Directory for Your Post

  1. Inside the cloned repository, navigate to the content/posts/ folder.
  2. Create a new directory named with a short slug for your post (e.g., my-python-announcement). Slugs should be URL-friendly—lowercase, hyphens instead of spaces.
  3. Your final path will look like: content/posts/my-python-announcement/

3. Write Your Post in Markdown

  1. Inside your new folder, create a file named index.md.
  2. Start the file with YAML frontmatter (metadata between triple dashes). Required fields:
    • title: Your post title (e.g., "Python 3.12 Released")
    • date: Publication date in YYYY-MM-DD format
    • authors: List of author names (e.g., ["Guido van Rossum"])
    • tags: Comma-separated tags (e.g., [release, announcement])
    Example:
    ---
    title: "Python 3.12 Released"
    date: 2025-03-15
    authors: ["Jane Doe"]
    tags: [release, python312]
    ---
  3. After the frontmatter, write your blog content using Markdown syntax. You can include headings, lists, links, code blocks, etc.
  4. If you have images, place them in the same directory as index.md (e.g., my-image.png). Reference them with relative paths like ![alt text](my-image.png).
  5. Save the file.

4. Open a Pull Request

  1. Commit your changes locally:
    git add .
    git commit -m "Add post: My Python Announcement"
  2. Push to your fork:
    git push origin main
  3. Go to your fork on GitHub. You should see a banner prompting you to create a pull request. Click Compare & pull request.
  4. Provide a clear title and description for your PR. Mention what the post is about and any special notes (e.g., time-sensitive release).
  5. Submit the pull request. The Python Insider core team will review it, suggest edits if needed, and merge when ready.

Alternative: Use Keystatic CMS (Optional)

If you prefer a visual editor over raw Markdown, you can run the site in development mode to use Keystatic. This requires Node.js installed:

npm install
npm run dev

Then open http://localhost:4321/admin in your browser. You'll see a user-friendly interface to draft posts. Changes are saved directly into the content/ folder. However, you still need to submit your changes via a pull request (fork and PR).

Tips and Best Practices

  • Preview locally: If you have Node.js, run npm run dev to see your post rendered exactly as it will appear on the live blog. This helps catch formatting issues early.
  • Check the README: The repository's README contains full documentation on frontmatter fields, local development, and any additional rules.
  • Use meaningful slugs: Your directory name becomes part of the URL (e.g., /my-python-announcement/). Keep it short but descriptive.
  • Images in the same directory: Always place image files next to your index.md. This keeps assets organized and avoids broken links.
  • Don't worry about styling: The blog uses Tailwind CSS, which automatically applies consistent styling to your Markdown content. Focus on the writing.
  • Check for broken links: After migration, some older posts might have issues. If you notice a problem, file an issue or submit a PR fixing it.
  • Keep updates brief: Official blog posts typically cover specific announcements. For broader Python community discussions, consider the Python Discourse or other venues.

With these steps, you're ready to contribute to the Python Insider Blog. The process is straightforward, open, and community-driven. Happy writing!