数据集【免费下载链接】remote-jobsSource for remoteintech.company — a community-maintained directory of remote-friendly tech companies项目地址https://gitcode.com/GitHub_Trending/re/remote-jobs点击查看免费下载本篇技术指南以远程工作公司目录仓库 remote-jobs 中的 Oyster HR 公司档案 为绝对主线逐字段拆解一条「完全远程、全球招聘」的公司条目是如何被记录、校验并最终渲染成站点页面的。你不仅能完整理解 Oyster HR 作为 Employer of RecordEOR的业务模式、远程文化与技术栈还能透过数据标签表、计算字段、布局模板与集合逻辑的源码掌握该目录的数据模型与页面生成链路学会如何在自己的仓库中验证、构建这类档案。档案总览一条公司条目由元数据与正文组成Oyster HR 档案 是src/companies/目录下约 850 条公司档案中的一条整体由两部分构成文件头部的YAML frontmatter元数据与 Markdown 正文的若干##小节。其中 frontmatter 完整记录如下--- title: Oyster HR slug: oyster-hr website: https://www.oysterhr.com/ careers_url: https://www.oysterhr.com/careers region: worldwide remote_policy: fully-remote company_size: large technologies: - javascript - cloud addedAt: 2026-05-02 ---这些字段在 CONTRIBUTING.md 中都有明确的合法取值约束region只能是worldwide、americas、europe、americas-europe、asia-pacific、other之一remote_policy只能是fully-remote、remote-first、hybrid、remote-friendly之一technologies只能取自一份受控标签清单详见下文“技术标签”小节。而addedAt属于维护者管理的时间字段社区贡献者提交 PR 时不应自行携带。将 frontmatter 与 标签定义文件 对照可以看到每个枚举值最终渲染成的人类可读文案frontmatter 字段Oyster HR 的值渲染后的标签来源labels.jsregionworldwideWorldwideremote_policyfully-remoteFully Remotecompany_sizelarge201-1000 employeestechnologies[0]javascriptJavaScripttechnologies[1]cloudCloud正文部分则按约定包含## Company blurb、## Remote status、## How to apply三个必选小节并额外提供了## Company size、## Region、## Company technologies三个常用小节——这与 CONTRIBUTING.md 中规定的档案正文结构完全一致。Company blurbEOR 全球雇佣平台的核心业务档案开篇的 blurb 是全条档案的“公司简介”也是后续自动生成页面 meta description 的直接素材见下文“从档案到页面的数据流”。原文如下Oyster HR 是一个全球雇佣平台帮助企业在超过 180 个国家和地区雇佣、发薪并管理团队成员。Oyster 以 Employer of RecordEOR名义雇主的身份运营为分布式团队处理本地雇佣合同、薪资发放、税费、福利与合规事务。这段简介揭示了 Oyster HR 的核心业务模式——EOR企业不需要在目标国家设立本地实体而是由 Oyster 充当法律意义上的雇主代企业完成当地雇佣落地。档案还强调这是一家“mission-driven”使命驱动的公司目标是推动公平、不受地点限制的全球规模化招聘。从目录建设角度这段 blurb 也承担着双重职责在 companies.11tydata.js 中Eleventy 计算字段会通过正则##\s*Company\s*blurb\s*\n([\s\S]*?)(?\n##|$)提取## Company blurb标题之后、下一个##之前的段落作为页面描述来源随后剥离 Markdown 链接语法、星号、下划线、反引号压缩空白并截断到约 155 字符优先在句号或空格处断句。也就是说blurb 写得越清晰搜索引擎结果里的描述就越准确。Company size约 600 员工的“large”级企业档案通过两个层面表达公司规模frontmatter 枚举值company_size: large这是一个面向机器检索与筛选的结构化标签。对照 labels.js 的companySize映射表large对应的区间为 201-1000 名员工页面与浏览页会统一渲染为 “201-1000 employees”。正文文字## Company size小节补充了更具体的说明——约 600 名员工。这种“枚举值 自由文本”的双层结构是该目录的通用惯例枚举值用于构建可浏览、可筛选的标签体系例如 collections.js 中的分组与标签统计而正文文字保留公司在简介里的原话精度。Remote status完全远程“work from anywhere — we mean it”Oyster HR 档案的远程状态是remote_policy: fully-remote完全远程正文补充了关键细节Oyster 是一家完全远程的公司——“work from anywhere — we mean it”随处办公我们说到做到。团队分布在 70 多个国家而产品本身正是为分布式公司构建的。这组表述既说明了公司自身的雇佣形态团队横跨 70 国家也点出了业务与产品的一致性一家帮助他人组建分布式团队的 EOR 平台自己首先就是全远程组织。对照标签体系fully-remote是remotePolicy四种取值中程度最高的一个labels.js此外还有remote-first远程优先、hybrid混合与remote-friendly远程友好三档。Region全球招聘的覆盖范围region: worldwide表示招聘范围覆盖全球这是region枚举中唯一的全球化取值其余为americas、europe、americas-europe、asia-pacific、other见 labels.js。与 Oyster HR “180 国家合规雇佣、70 国家自有团队”的业务事实相互印证——对于一个 EOR 平台而言全球覆盖既是招聘政策也是核心产品能力。Company technologies技术栈的枚举与正文双层呈现Oyster HR 档案对技术栈的呈现也采用双轨制frontmattertechnologies登记了两个受控标签javascript与cloud。这是目录内可筛选、可计数的最小分类粒度getCompaniesByTech集合见 collections.js会按这些标签把所有公司分组生成“使用该技术的公司”浏览页。正文## Company technologies给出更完整的明细TypeScript 与 Node.js 构建平台主体React 构建 Web 应用GraphQL APIPostgres 数据库AWS 承载基础设施从源码结构看frontmatter 标签是「面向目录检索的结构化元数据」正文是「面向求职者的技术细节说明」两者互补而非重复。值得注意的是正文提到的 TypeScript 目前并不在 labels.js 的tech白名单内因此档案选择了最接近的javascript作为可索引标签——这也体现了受控标签体系对自由表述的收敛作用。How to apply一行 careers_url 驱动的应聘入口档案最后的小节给出应聘指引浏览 oysterhr.com/careers 上的开放职位。在实际渲染中这个入口并不依赖正文链接而是由 frontmatter 的careers_url字段驱动在 company.njk 布局模板中{% set buttonUrl careers_url or website %}会优先取careers_url并以data-button-variantprimary样式渲染一个 “Apply Now →” 主按钮点击行为会携带data-track-outbound外链追踪属性若某公司未填careers_url按钮则退化为 “Visit Website”。CONTRIBUTING.md 同时要求careers_url必须指向公司自己的招聘页而不是面向客户的销售页。从档案到页面的数据流仓库源码级链路一条公司档案最终呈现为站点页面的完整链路如下数据标签统一出口companyHelpers.js 从 labels.js 导入regionLabels、remotePolicyLabels、companySizeLabels、techLabels并重新导出供 collections.js 等 JS 消费者使用Nunjucks 模板则通过全局数据级联直接读labels.*。这就是“单一事实来源”设计。计算字段自动补全companies.11tydata.js 的eleventyComputed.description会在未显式声明description时从## Company blurb自动提取并清洗文本生成 155 字符以内的页面 meta 描述清洗规则依次为text剥为text、删除* _ 、换行与多空格归一。布局模板渲染company.njk 负责最终页面渲染标题、“Apply Now”按钮、region与remote_policy标签分别跳转到/browse/{{ region }}/与/browse/{{ remote_policy }}/、正文内容以及technologies数组驱动的 “Tech Stack” 标签区最后显示updatedAt格式化后的更新时间。集合与浏览页collections.js 以./src/companies/**/*.md为范围构建公司集合带缓存以避免对约 850 条内容做 6 次重复过滤提供按标题排序的全量列表、按addedAt倒序的“最近新增”Oyster HR 的addedAt: 2026-05-02即参与此排序、按 region / 技术分组以及标签统计count字段并直接消费公司 frontmatter 生成technology、region、remote-policy三类浏览标签页。如何验证与运行本仓库若想亲自验证该档案的构建行为可以按 README.md 的说明操作需 Node.js 22npm install # 安装依赖 npm run start # 启动带热重载的开发服务器 npm run build # 生产构建贡献者新增公司条目的标准流程是在src/companies/{slug}.md创建文件文件名必须与 frontmatter 的slug一致填写符合取值约束的 frontmatter 并撰写含必选小节的正文运行npm run build确认可构建后提交 PR仓库的 Validate Company Profiles 校验 Action 会自动检查字段合法性与格式并在 PR 上反馈需修复的问题详见 CONTRIBUTING.md。Oyster HR 档案正是这套规范下的一条完整范例枚举值合法、必选小节齐备、正文信息密度足够可以被校验、检索与渲染为高质量的远程公司页面。小结透过 Oyster HR 档案 这一具体样本可以看到 Remote In Tech 目录「结构化元数据驱动 自由正文补充」的设计哲学region、remote_policy、company_size、technologies等枚举值构成机器可读、可筛选、可统计的标签体系labels.js而 blurb、远程状态与技术栈明细则以人类可读的方式补充业务上下文两者经由 companies.11tydata.js 的自动描述生成、company.njk 的模板渲染与 collections.js 的集合分组最终汇聚成完整的公司页面与浏览目录。对于求职者这是一份可直接使用的远程雇主速查对于开发者它又是一条理解内容目录数据模型与 Eleventy 构建链路的完整样例。赞分享数据集【免费下载链接】remote-jobsSource for remoteintech.company — a community-maintained directory of remote-friendly tech companies项目地址https://gitcode.com/GitHub_Trending/re/remote-jobs点击查看免费下载相关推荐解读 Remote In Tech 仓库中的 Bitwarden 公司档案全远程密码管理平台的技术栈、雇佣模式与数据模型解读 Remote In Tech 仓库中的 Bitwarden 公司档案全远程密码管理平台的技术栈、雇佣模式与数据模型 Bitwarden 是一套开源密码与数据集Coalition Technologies 完全远程档案解析Remote In Tech 远程公司目录的数据结构与全球雇佣实践Coalition Technologies 完全远程档案解析Remote In Tech 远程公司目录的数据结构与全球雇佣实践 Coalition Tech数据集深入解析 Remote In Tech 目录中的 Discourse 远程公司档案技术栈、全远程政策与档案数据模型深入解析 Remote In Tech 目录中的 Discourse 远程公司档案技术栈、全远程政策与档案数据模型 导读 本文以 src/companies/数据集创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考