本文档概述了 Tech Interview Handbook 仓库内的内容组织方式。它涵盖了内容架构、文件组织以及使用 Docusaurus 构建的文档网站的导航结构。理解内容结构对于希望在仓库中添加或修改内容的贡献者至关重要。
有关 Portal Application 架构的信息,请参阅 Portal Application Architecture。
来源:README.md21-37 apps/website/docusaurus.config.js1-213 apps/website/sidebars.js1-119
Tech Interview Handbook 的内容主要被组织成一个使用 Docusaurus 构建的文档网站,其中包含技术面试准备的教育资源。内容遵循一种结构化的方法,指导用户完成从准备到薪资谈判的整个面试过程。
来源:apps/website/sidebars.js1-119 apps/website/docusaurus.config.js77-102
Tech Interview Handbook 的内容主要以 Markdown 文件形式存储在仓库中。这些文件按照特定的目录结构进行组织,该结构与网站的导航相对应。
来源:apps/website/contents/resume.md1-421 apps/website/contents/system-design.md1-70 apps/website/src/pages/index.js1-848
Tech Interview Handbook 中的内容按几个主要类别组织,每个类别在技术面试准备过程中都有特定的目的。
| 类别 | 目的 | 关键内容文件 |
|---|---|---|
| 介绍 | 关于手册的概述以及如何使用它 | software-engineering-interview-guide.md |
| 简历准备 | 关于创建有效简历的指导 | resume.md |
| 编码面试 | 编码面试的准备资源 | coding-interview-prep.md, coding-interview-cheatsheet.md |
| 系统设计 | 系统设计面试资源 | system-design.md |
| 行为面试 | 行为面试技巧 | behavioral-interview.md, behavioral-interview-questions.md |
| 算法 | 常见算法的参考资料 | algorithms/*.md |
| 职业发展 | 职业晋升资源 | career-growth.md |
来源:README.md26-35 apps/website/sidebars.js1-119 apps/website/contents/career-growth.md1-67
Tech Interview Handbook 使用 Docusaurus 将 Markdown 内容转换为结构化的网站。渲染过程涉及几个关键组件,将原始内容转化为用户友好的界面。
来源:apps/website/docusaurus.config.js1-213 apps/website/src/theme/DocItem/Content/index.js1-59 apps/website/src/css/custom.css1-188
DocItem Component:渲染每个文档页面的主要内容
SidebarAd Component:根据当前页面显示上下文相关的广告
Custom CSS:提供 Tech Interview Handbook 的特定样式
来源:apps/website/src/theme/DocItem/Content/index.js1-59 apps/website/src/components/SidebarAd/index.js1-204 apps/website/src/components/SidebarAd/styles.module.css1-84
Tech Interview Handbook 中的内容遵循一致的 Markdown 文件结构
---
id: [unique-identifier]
title: [page-title]
description: [page-description]
keywords: [SEO-keywords]
sidebar_label: [sidebar-text]
---
[Content body with Markdown formatting]
frontmatter(位于 --- 标记之间)提供了页面的元数据,包括:
id:用于路由的唯一标识符title:在浏览器中显示的页面标题description:用于 SEO 的元描述keywords:SEO 关键词sidebar_label:在侧边栏中显示的文本来源:apps/website/contents/system-design.md1-15 apps/website/contents/resume.md1-16 apps/website/contents/mock-interviews.md1-17
侧边栏导航定义在 sidebars.js 文件中,该文件将内容组织成逻辑类别,并创建了在网站上可见的导航层级。
侧边栏被配置为一个 JSON 对象,包含类别和项目
每个类别可以包含
collapsible来源: apps/website/sidebars.js1-119
《技术面试宝典》包含一些增强文档的特殊内容组件。
InDocAd:在文档内容中插入上下文广告。
import InDocAd from './\_components/InDocAd';,然后是 <InDocAd />。信息提示框:突出显示重要信息。
:::info 块进行标注。:::tip 块提供专家提示。图片和图表:带有说明文字的视觉组件。
来源: apps/website/contents/resume.md22-23 apps/website/contents/resume.md96 apps/website/contents/resume.md40-53
《技术面试宝典》的内容会定期更新以保持其时效性。更新流程包括:
对于贡献者来说,理解内容结构对于确保新内容能够与现有文档无缝集成至关重要。
来源: README.md99-101 README.md37-38
《技术面试宝典》的内容结构旨在为技术面试准备提供全面、易于导航的资源。其组织方式遵循从初步准备到各种面试类型再到面试后流程的逻辑顺序。内容以 Markdown 文件形式存储,通过 Docusaurus 渲染,并通过结构化的侧边栏进行组织,便于导航。
理解这种内容结构对于浏览手册的用户和希望改进现有内容的贡献者都非常重要。