# power-safety-wiki **Repository Path**: ch_su/power-safety-wiki ## Basic Information - **Project Name**: power-safety-wiki - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-03-17 - **Last Updated**: 2026-04-07 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 电力系统大停电事故案例库 > 铭记黑暗,守护光明 上海交通大学电力系统安全分析课程组发起的知识平台项目,面向电力系统安全分析领域,系统整理全球重大停电事故,沉淀可持续扩展的中文案例库。 ## 项目定位 本项目当前以 `Astro + Markdown` 为主,页面接入分为两条内容线: - `src/pages/` 负责首页、关于页和索引页等站点页面 - `docs/events/` 负责事件正文 Markdown 原稿 - `React islands` 负责地图、滚动场景和局部交互 - `GSAP` 负责首页滚动叙事动画 - `public/` 负责音频、图标等静态资源 ## 项目目标 我们的目标是做电力系统安全分析方向高质量、可持续扩展的中文网站。 核心价值: - 内容为本:高质量内容比页面形式更重要 - 质量优先:宁缺毋滥,所有案例以可靠来源为基础 - 协作友好:内容组主要维护 Markdown,技术组负责展示与发布 - 荣誉传承:贡献者署名长期保留 ## 当前阶段 当前仓库的实际状态如下: 1. Astro 首页、关于页、事件详情页已经可以本地运行和构建 2. 项目说明类内容已直接整理到 Astro 页面中 3. 事件详情页当前主要由 `src/data/blackouts.ts` 和 `docs/events/*.md` 驱动 4. 首批案例正文仍在逐步补齐中,部分事件页会回退到模板内容 ## 快速开始 ### 环境要求 - Node.js >= 22 ### 基础工具 - VS Code - Git - Node.js 22.x ```bash npm install npm run dev ``` 默认开发地址通常为 `http://localhost:4321`。 常用命令: ```bash npm run build npm run preview ``` 如果希望局域网设备也能访问预览,可使用: ```bash npm run dev -- --host npm run preview -- --host ``` ## 内容结构 ```text public/ favicon.svg audio/ narrative-bg.mp3 src/ components/ ArchiveGrid.tsx HomePage.tsx data/ blackouts.ts layouts/ MainLayout.astro DocumentLayout.astro pages/ index.astro about.astro incidents/index.astro events/[slug].astro docs/ events/ README.md _template.md 1965-us-northeast.md guides/ contributing.md content-team-getting-started.md tech-team-quick-start.md ``` ## 当前已整理的内容 - [首页入口](./src/pages/index.astro) - [关于页](./src/pages/about.astro) - [案例索引说明页](./src/pages/incidents/index.astro) - [事件文稿目录说明](./docs/events/README.md) - [事件原稿模板](./docs/events/_template.md) - [贡献指南](./docs/guides/contributing.md) - [内容策划组上手指南](./docs/guides/content-team-getting-started.md) - [技术组快速上手指南](./docs/guides/tech-team-quick-start.md) - [事件视频上传傻瓜指南](./docs/guides/video-upload-sop.md) ## 文件放置约定 - `src/`:放会参与 Astro 构建的页面、组件、布局和数据文件 - `public/`:放需要按原路径直接访问的静态资源,例如图片、音频、视频、下载文件 - 如果是“一个要参与站点路由的页面”,应放到 `src/pages/` - 如果是“页面中要引用的资源文件”,应放到 `public/` - 如果是“要嵌入到现有页面里的组件或逻辑”,应放到 `src/components/` - 如果是 `iframe` / 视频嵌入代码本身,应写在 `src` 下页面、组件或 Markdown 中;只有被嵌入的资源文件才放 `public/` 例如: - 新增一个独立页面:`src/pages/xxx.astro` - 新增一个可复用嵌入模块:`src/components/xxx.tsx` - 新增视频、图片、音频:`public/...` ## 协作分工 - 内容策划组:负责案例写作、资料整理、视频制作与提审 - 内容审核组:负责选题、规范、内容把关 - 技术组:负责视频链接回填、页面接入、静态资源整理、部署发布