mrflippermen/mrflippermen.github.io

GitHub: mrflippermen/mrflippermen.github.io

一个基于 Astro 构建的双语网络安全作品集与博客静态站点,用于展示 CTF writeups、技术 wiki 和安全认证记录。

Stars: 0 | Forks: 0

# FLIPPERMEN — 网络作战作品集 进攻性安全作品集,记录了红队行动、Active Directory 漏洞利用、CTF 活动、认证和技术研究。采用深色终端美学,支持双语 (ES/EN),并作为静态站点部署。 ## 技术栈 - **框架:** [Astro 4](https://astro.build) — 静态站点生成 - **样式:** SCSS + 集中式设计 token (`_tokens.scss`) - **内容:** Markdown 集合,包含通过 Zod 验证的 frontmatter - **图标:** Font Awesome 6 (CDN) + 自定义内联 SVG 组件 - **部署:** 通过 GitHub Actions 部署至 GitHub Pages ## 快速开始 ### 前置条件 - Node.js 20.19.6 (参见 `.nvmrc`) - npm ### 命令 ``` npm install # Install dependencies npm run dev # Dev server → http://localhost:4321 npm run build # Static build to /dist npm run preview # Preview production build locally ``` ## 项目结构 ``` mrflippermen.github.io/ ├── src/ │ ├── components/ # Astro components │ │ ├── about/ # About page sections │ │ ├── CommandHeader.astro │ │ ├── Icon.astro # Inline SVG icons │ │ ├── SEOHead.astro │ │ └── TimelineItem.astro │ ├── layouts/ │ │ └── BaseLayout.astro # Global shell, CSP, fonts, FA CDN │ ├── pages/ │ │ ├── index.astro # Landing / redirect │ │ └── [lang]/ # i18n routes (es/, en/) │ │ ├── index.astro │ │ ├── about.astro │ │ ├── cyberflipper.astro │ │ ├── contact.astro │ │ ├── writeups/ # CTF log index + detail │ │ ├── certs/ # Certifications index + detail │ │ └── wiki/ # Technical wiki index + detail │ ├── content/ # Markdown collections │ │ ├── writeups/ # CTF and HTB machine writeups │ │ ├── certs/ # Certifications and Pro Labs │ │ ├── guides/ # Technical guides │ │ ├── wiki/ # AD, forensics, exploitation wiki │ │ └── config.ts # Zod schemas for all collections │ ├── i18n/ │ │ └── utils.ts # Translations and locale routing │ └── styles/ │ ├── _tokens.scss # Design tokens — single source of truth │ └── global.scss # Base styles, animations, layout ├── public/ │ ├── images/ # Static images │ ├── favicon.svg │ ├── robots.txt │ └── .nojekyll # Required for GitHub Pages ├── .github/workflows/ │ └── deploy.yml # CI/CD to GitHub Pages └── astro.config.mjs ``` ## 关键设计决策 - **设计 token** — 所有颜色、间距和排版均在 `_tokens.scss` 中统一定义。组件中不存在任何硬编码的值。 - **双语** — 默认西班牙语,英语作为回退选项。通过 Astro 的内置路由实现基于路径前缀的 i18n。 - **内容集合** — 使用 Zod schema 为 writeup、认证、指南和 wiki 条目提供类型安全的 frontmatter。 - **深色终端美学** — 电路网格背景、扫描线叠加层、等宽显示字体,以及基于角色的配色方案(红/蓝/紫队)。 - **性能** — 内联 SVG 图标、预加载的 Google Fonts、通过 `public/` 提供的静态资源。 ## 内容管理 ### Writeup ``` --- title: "Machine Name - HTB" date: 2024-01-15 excerpt: "Brief description" tags: ["Web", "PrivEsc", "Linux"] difficulty: "Medium" # Easy | Medium | Hard | Insane platform: "HTB" # HTB | VulnHub | TryHackMe | CTF | Fluid | CWL | Custom image: "/images/blog/file.png" --- ``` ### 认证 ``` --- title: "Certification Name" date: 2024-01-15 level: "Advanced" platform: "Hack The Box" image: "/images/about/file.png" category: "Red Team" tags: ["AD", "Exploitation"] --- ``` ### Wiki 条目 ``` --- title: "Attack Technique" description: "Brief overview" category: "AD" # AD | Web | Forensics | Exploitation | Other date: 2024-01-15 image: "/images/wiki/1.png" --- ``` ## 样式 建议: - 使用 `_tokens.scss` 中的 CSS 自定义属性 — `var(--red-team)`、`var(--text-muted)` 等。 - 在语义上使用阵营颜色 — 红色代表进攻,蓝色代表防御,紫色代表混合。 禁止: - 在组件样式中硬编码原始颜色值。 - 使用内联样式。 ## 部署 推送至 `main` → GitHub Actions 将构建并部署至: ``` https://mrflippermen.github.io/ ``` 默认西班牙语:`/es/` — 英语:`/en/` — 根路径重定向至 `/es/`。 MIT © 2026 mrflippermen
标签:Astro, MITM代理, 个人作品集, 博客系统, 国际化, 防御加固, 静态网站