このプロジェクトについて
このリポジトリは、Mathew Musango Peterさんの個人ポートフォリオウェブサイトの構築工程を記したものです。サイトはMarkdownで執筆され、MkDocs 1.6.1とMaterialテーマ9.7.7によってビルドされ、ダークスレートデフォルトにライト切替とティールアクセントが適用されています。開発はPodman ComposeとHTTPS対応devサーバー(serve.py、mkcertによるTLS)でローカル実行されます。CI/CDはGitHub Actionsで実装されており、mainへのプッシュとバージョンタグがビルドワークフローをトリガーし、mkdocs build、pip-audit、リンクチェック、言語別lintingチェックを実行します。成功したビルドはステージングS3+CloudFrontにサイトアーティファクトを公開し、バージョンタグはさらにpre-prod用AWSミラーにデプロイし、prod環境での手動承認後にGitHub Pagesにもデプロイされます。ビジターアナリティクスはプライバシー重視のサーバーレスパイプラインで処理され、CloudFrontが geo ヘッダーをAPI Gateway経由でwriter Lambdaに転送しDynamoDB(90日TTL)に非IPデータを挿入し、reader Lambdaが集計クエリを処理します。インフラストラクチャはTerraformで定義され、OAC付きプライベートS3バケット、CloudFront、API Gateway、Lambda関数、DynamoDBテーブル、そして任意のWAF/VPCが含まれます。terraform/ciブートストラップステップは環境ごとのステートバックエンド(S3 + DynamoDBロック)とLeast Privilege OIDCロールを作成し、長期有効なAWSキーの使用を回避します。セキュリティプラクティスにはDependabot更新、リリース毎のCycloneDX SBOM生成、CIビルド毎のpip-auditが含まれます。リポジトリにはコントリビューションガイド、セキュリティポリシー、チェンジログ、ブランチ/タグルールセットも用意されています。すべてのコードはMITライセンスの下で提供され、個人コンテンツ(テキスト、画像、履歴書)は著作者に著作権が残ります。
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.