
数据集【免费下载链接】remote-jobsSource for remoteintech.company — a community-maintained directory of remote-friendly tech companies项目地址https://gitcode.com/GitHub_Trending/re/remote-jobs点击查看免费下载本篇技术指南以 remote-jobsRemote In Tech开源仓库中的 Graylog 公司档案 为研究对象逐层拆解一份公司档案的完整构成从 frontmatter 数据模型、字段取值约束到 Markdown 内容如何被 Eleventy 编译渲染成可浏览、可检索的站点页面再到元描述meta description的自动生成算法。读完本文你将掌握在本仓库中新增、修改与验证公司档案的完整方法并理解整个目录站点从数据到页面的真实渲染链路。档案全景Graylog 在目录中的完整呈现Graylog 档案位于 src/companies/graylog.md是一份符合 Remote In Tech 目录规范的标准公司档案。它由两部分组成YAML frontmatter结构化元数据与 Markdown 正文可读性描述二者共同决定页面最终呈现的内容。frontmatter 结构化数据一览档案开头是一段 YAML frontmatter完整内容如下--- title: Graylog slug: graylog website: https://www.graylog.org/ careers_url: https://www.graylog.org/careers region: worldwide remote_policy: fully-remote company_size: small technologies: - java - javascript - nosql addedAt: 2018-04-24 updatedAt: 2019-10-28 ---逐个字段的语义如下字段值含义titleGraylog公司展示名称同时用作页面标题与 H1sluggraylogURL 标识符必须与文件名一致graylog.mdwebsite官网地址公司官方网站careers_url招聘页地址职位申请入口渲染时优先级高于websiteregionworldwide招聘地域范围取值为受控枚举remote_policyfully-remote远程工作政策取值为受控枚举company_sizesmall公司规模档位取值为受控枚举technologiesjava/javascript/nosql技术栈标签列表每一项都会被渲染成可点击浏览的 TagaddedAt/updatedAt日期收录时间与最近更新时间的 ISO 日期Markdown 正文的五个核心小节正文部分由五个##小节组成涵盖了目录规范要求的全部必填与常用可选内容Company blurb一句话定位——Graylog is an open source, centralized log management alternative to Splunk.即开源、集中式日志管理平台定位为 Splunk 的开源替代品Company size20-50 人与 frontmatter 中company_size: small对应的 11-50 人档位一致Remote status100% remote即全员远程RegionWorldwide全球范围招募Company technologiesJava、MongoDB、ReactJS/JavascriptOffice locations总部所在地为美国得克萨斯州休斯顿Houston, TXHow to apply前往招聘页面选择感兴趣的职位填写页面底部的申请表提交申请。正文中所有内容都是纯文本描述不带任何 Frontmatter 之外的结构化元信息——这也正体现了该目录Markdown 描述 frontmatter 结构化的双层设计哲学。字段取值约束数据模型的单一事实来源档案中的region、remote_policy、company_size、technologies并非自由字符串而是受控枚举。其取值定义统一集中在 src/_data/labels.js该文件注释明确写着它是 single source of truth单一事实来源同时被 JavaScript 侧与 Nunjucks 模板侧消费。各字段的合法取值如下regionworldwide、americas、europe、americas-europe、asia-pacific、otherremote_policyfully-remote、remote-first、hybrid、remote-friendlycompany_sizetiny1-10 人、small11-50 人、medium51-200 人、large201-1000 人、enterprise1000 人technologiesjava、javascript、nosql、python、go、rust、kubernetes等 24 个预定义标签。Graylog 档案使用的worldwide、fully-remote、small、java、javascript、nosql全部命中合法枚举属于完全合规的档案。上述取值约束的权威说明位于 CONTRIBUTING.md 的 Valid Field Values 表格中贡献者在提交新档案前应逐一对照。此外src/_data/companyHelpers.js 通过getRegionLabel、getRemotePolicyLabel、getCompanySizeLabel、getTechLabel四个函数将枚举值映射为人类可读文案例如fully-remote→Fully Remote、small→11-50 employees同时导出这些映射供集合模块与浏览页复用。渲染链路一份 Markdown 如何变成完整页面Graylog 档案在站点中由 src/_layouts/company.njk 模板渲染。整个渲染链路如下集合收集src/_config/collections.js中的getAllCompanies通过getFilteredByGlob(./src/companies/**/*.md)收集所有公司档案并按标题字母序排序getRecentCompanies按addedAt倒序取最近 12 家getCompaniesByRegion与getCompaniesByTech则分别按地域与技术栈分组Graylog 因此会同时出现在 worldwide 与 Java/JavaScript/NoSQL 三个技术浏览页中模板渲染company.njk使用data-track-outbound追踪外链点击将careers_url或website渲染为申请按钮careers_url存在时按钮文案为 Apply Nowregion、remote_policy、technologies分别渲染为三种视觉样式不同的 Tag且每个 Tag 都链向对应的/browse/{value}/浏览页形成跨档案的浏览网络日期格式化页脚通过 src/_config/filters/dates.js 中的formatDate过滤器基于 dayjs将updatedAt: 2019-10-28格式化为 October 28, 2019 这样的展示文案全文检索package.json中的build脚本在 Eleventy 构建完成后执行pagefind对整个dist目录建立索引因此 Graylog 档案会被 Pagefind 全文检索覆盖。纵深原理meta description 的自动生成算法档案正文并未显式编写description字段站点却能展示一段精炼的页面描述——这得益于 src/companies/companies.11tydata.js 中的eleventyComputed计算数据。其算法如下若档案已显式设置description直接采用不做覆盖否则用正则/##\s*Company\s*blurb\s*\n([\s\S]*?)(?\n##|$)/i从原始 Markdown 中抓取 Company blurb 小节之后的文本Graylog 档案即命中此分支依次做清洗把text链接剥离为纯文本、删除*、_、等 Markdown 符号、把换行与多空格压平为单个空格截断到约 155 字符优先在句号处截断若句号位置超过 155 的一半否则在最后一个空格处截断并追加省略号作为 SEO 友好的 meta description 输出。以 Graylog 为例blurb 文本 Graylog is an open source, centralized log management alternative to Splunk. 长度不足 155 字符因此会原样保留为完整描述——这条逻辑由data.page.rawInput提供输入任何新增档案无需手工写 description 即可自动获得合规的元描述。从档案到实站Graylog 档案在目录中的角色作为一份收录于 2018-04-24、最近更新于 2019-10-28 的档案Graylog 在目录中承担三类作用可浏览节点通过 region/remote_policy/technologies 三类 Tag 挂入浏览体系用户可沿 Fully Remote、Worldwide、Java 等路径找到它可检索对象被 Pagefind 索引后用户可通过站内搜索直接命中可贡献模板其结构与 CONTRIBUTING.md 给出的模板完全一致是新增公司档案时可参照的规范样例。实战如何提交一份合规的 Graylog 同类档案参照 CONTRIBUTING.md 与 Graylog 档案的既有形态新增公司档案只需四步在src/companies/下新建{slug}.md文件slug必须与 frontmatter 中的slug值一致如slug: graylog对应graylog.md按模板填充 frontmatter 与正文正文必须包含## Company blurb、## Remote status、## How to apply三个小节并按需补充## Company size、## Region、## Company technologies运行npm run build依赖 Node.js 22命令定义见 package.json验证构建通过build会依次执行清理、Eleventy 生产构建与 Pagefind 索引提交 Pull Request由 Validate Company Profiles GitHub Action 自动校验字段合法性与格式机器人会在 PR 中列出问题并阻止合并直到修复。需要特别留意addedAt与updatedAt由维护者管理贡献者不应在 PR 中自行包含careers_url必须指向公司自己的招聘页而非售卖服务的页面公司需提供真实的远程岗位且属于科技行业否则档案可能被维护者拒绝。小结一份看似简单的 Graylog 档案背后串联着 frontmatter 枚举约束、Eleventy 计算数据、Nunjucks 模板渲染、集合分组与全文索引的完整工程链路。理解 graylog.md 这份档案的写法就等于掌握了 remote-jobs 目录中全部公司档案的数据结构与站点运行机制——无论你是想查阅一家公司是否适合远程求职还是想为目录贡献新的公司档案本文梳理的字段语义、渲染流程与构建验证步骤都能直接落地使用。赞分享数据集【免费下载链接】remote-jobsSource for remoteintech.company — a community-maintained directory of remote-friendly tech companies项目地址https://gitcode.com/GitHub_Trending/re/remote-jobs点击查看免费下载相关推荐Node.js 16.1.0 (Current) 发布解读fs.fileHandle.read 无参调用、V8 9.0 补丁与 npm 7.11.2Node.js 16.1.0 Current 发布解读fs.fileHandle.read 无参调用、V8 9.0 补丁与 npm 7.11.2 本文基于 n数据集Remote In Tech 公司档案解析从 Coodesh 条目看远程友好公司的结构化数据与渲染机制Remote In Tech 公司档案解析从 Coodesh 条目看远程友好公司的结构化数据与渲染机制 导读 本文以 src/companies/coodes数据集Appinio 公司档案解析remote-jobs 目录中远程友好公司的数据结构与贡献规范Appinio 公司档案解析remote jobs 目录中远程友好公司的数据结构与贡献规范 Appinio 是一家总部位于德国汉堡的市场调研科技公司允许员工数据集上一篇OpenMontage HyperFrames Jewel / Rich 色板全解为奢华、活动与高端内容打造的 8 组视频配色方案下一篇微信数据解密技术全解析从原理到实践的探索之旅创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考