Skip to content

Project — Python Platform Engineering Framework

Expert portfolio build — extract shared platform libraries and a plugin host other teams can extend.

Project Overview

Goal: Design a small framework (plateng) with shared libraries and discovered plugins for Terraform plan summary, GitHub audit, cert monitoring, and Slack notify.

Deliverable for your portfolio:

  • Library package + CLI host
  • Plugin entry points ([project.entry-points])
  • Shared: config loader, secrets helper, HTTP client with retries, structured logging
  • Example plugins with fixtures
  • Architecture diagram and contributor guide

Estimated cost: £0.

Goals

  • Clear separation: plateng.core vs plateng.plugins.*
  • Plugins register commands without editing the host core
  • Secrets never logged
  • pytest for core + one plugin each
  • Versioned package with CHANGELOG

Stack

Piece Choice
Packaging pyproject.toml + hatchling/setuptools
CLI Typer
Plugins entry points or stevedore-style discovery
HTTP httpx
Test pytest

Prerequisites

Milestones

Milestone 1 — Core libraries

Config, logging, secrets, HTTP.

Milestone 2 — Plugin protocol

Interface + discovery + sample hello plugin.

Milestone 3 — Real plugins

tf summary, gh audit, certs check, notify slack — fixture-first.

Milestone 4 — Docs and versioning

SemVer, CONTRIBUTING, architecture D2 in README.

Success criteria

  • Third-party plugin can be installed and appears in --help
  • CI runs without cloud/Slack credentials
  • Security section documents threat model (token handling, dry-run)