资讯详情

资讯详情

remoteintech.company 公司档案数据模型全解析:以 MixRank 条目为例

数据集【免费下载链接】remote-jobsSource for remoteintech.company — a community-maintained directory of remote-friendly tech companies项目地址https://gitcode.com/GitHub_Trending/re/remote-jobs点击查看免费下载MixRank 是 remoteintech.company即当前仓库 remote-jobs 所构建的远程友好科技公司目录中近千家公司档案之一。本文以 src/companies/mixrank.md 这份真实档案为完整样例逐层拆解本仓库公司档案的结构化数据模型YAML frontmatter、Markdown 正文约定、字段取值规范并深入到 company.njk、collections.js、labels.js 等源码说明一份档案最终如何被渲染成独立页面、如何被按地区/远程政策/技术栈分组浏览、又如何自动生成 SEO 元描述。读完本文你将完整掌握向该目录新增或维护一家公司档案的全部字段语义与底层渲染机制。档案文件在仓库中的位置与整体形态公司档案全部存放于src/companies/目录每个公司一个 Markdown 文件命名规则为{slug}.mdslug必须与 frontmatter 中的slug值一致例如slug: mixrank对应src/companies/mixrank.md。整个src/companies/**/*.md目录就是站点公司集合collection的唯一数据来源见 collections.js 中的getCompaniesconst getCompanies collection { if (!_companyCache) { _companyCache collection.getFilteredByGlob(./src/companies/**/*.md); } return _companyCache; };每个档案文件由两部分组成YAML frontmatter结构化字段驱动站点逻辑与Markdown 正文以##小节组织的公司介绍。下面以 MixRank 档案为完整样例逐一展开。一、YAML frontmatter驱动站点逻辑的结构化字段MixRank 档案的 frontmatter 是一份标准的字段全集示例--- title: MixRank slug: mixrank website: https://mixrank.com careers_url: https://www.ycombinator.com/companies/mixrank region: worldwide remote_policy: remote-friendly company_size: small technologies: - javascript - linux - python - sql addedAt: 2022-09-25 updatedAt: 2022-10-01 ---这些字段并非装饰性元数据它们直接参与站点的三类核心逻辑1.title与slugtitle是公司显示名称在档案页h1中以渐变文本样式渲染见 company.njk并用于集合的字母排序getAllCompanies按title的localeCompare结果排序见 collections.js。slug决定生成页面的 URL 路径/companies/{slug}/也是companies.11tydata.js与模板中引用的标识符。2.website与careers_urlCTA 按钮的数据来源company.njk 中的核心逻辑展示了这两个字段的优先级关系{% set buttonUrl careers_url or website %} {% if buttonUrl %} a href{{ buttonUrl }} target_blank relnoopener noreferrer classbutton>companies.forEach(company { const technologies company.data.technologies || []; technologies.forEach(tech { if (!techGroups[tech]) techGroups[tech] []; techGroups[tech].push(company); }); });MixRank 的technologies: [javascript, linux, python, sql]会使其同时出现在 JavaScript、Linux、Python、SQL 四个技术浏览分组中。需要说明的是frontmatter 的technologies是浏览聚合用的受控枚举仅能取上表所列值而正文中 Company technologies 小节是自由文本展示MixRank 写的是 Python、PostgreSQL、Linux、Javascript、TypeScript、Nix、Git 的完整真实技术栈两者并不要求一一对应。5.addedAt与updatedAt档案时间戳这两个日期字段用于最近新增聚合与页脚更新时间展示getRecentCompanies按addedAt降序取前 12 家见 collections.js档案页页脚在updatedAt存在时显示 Last updated: …通过formatDate过滤器格式化为 MMMM D, YYYY 形式见 company.njk。MixRank 档案的addedAt: 2022-09-25、updatedAt: 2022-10-01表明它于 2022 年 9 月加入目录、10 月有过一次更新。按 CONTRIBUTING.md 的约定这两个日期字段由维护者管理贡献者 PR 中不应包含。二、Markdown 正文Company blurb 与标准小节frontmatter 之外档案正文遵循固定的##小节结构。CONTRIBUTING.md 规定正文必须包含## Company blurb、## Remote status、## How to apply可选## Company size、## Region、## Company technologies。MixRank 档案是六个小节齐全的完整示例。## Company blurb公司简介与 SEO 元描述来源MixRank 的 blurb 原文为MixRank processes petabytes of data every month from web crawls, Google Play Store, Apple App Store, social media, and dozens of other sources. We have hundreds of customers using our data products including Google, Amazon, Facebook, Intel, and Adobe, across industries Sales, Marketing, Finance, and Security.即MixRank 每月处理来自网络爬虫、Google Play 商店、Apple App Store、社交媒体等数十个数据源的 PB 级数据Google、Amazon、Facebook、Intel、Adobe 等数百家客户在使用其数据产品覆盖销售、市场营销、金融与安全行业。这一小节不仅用于页面展示更是SEO meta description 的自动生成源。companies.11tydata.js 中的eleventyComputed.description会若 frontmatter 已显式设置description则直接采用否则用正则##\s*Company\s*blurb\s*\n([\s\S]*?)(?\n##|$)提取 blurb 段文本依次剥离 Markdown 链接语法、*_反引号、压缩换行与多余空格截断到约 155 字符并优先在句号处断句、否则在空格处补省略号。由此可见写好一段凝练的 blurb 直接决定了公司档案在搜索引擎结果中的描述质量。其他小节规模、远程状态、地区、技术栈、申请方式MixRank 档案的各小节完整内容为Company size30对应 frontmattercompany_size: small即 11-50 人区间Remote statusFully-remote完全远程RegionAnywhere in the world面向全球招聘Company technologiesPython, PostgreSQL, Linux, Javascript, TypeScript, Nix, GitHow to apply访问其 Y Combinator 公司页面获取申请信息该页面也正是 frontmatter 中careers_url的指向。正文的 How to apply 小节与 frontmatter 的careers_url形成呼应模板按钮直接使用careers_url生成 Apply Now 入口正文则提供更详细的申请说明。三、从档案到页面company.njk 渲染管线一份.md档案被渲染成最终 HTML 页面的链路是src/companies/{slug}.md→ 目录数据文件 companies.json指定layout: company→ 公司布局 company.njk其自身继承base.njk并声明schema: Organization结构化数据→ 全局基础布局 base.njk。company.njk 的关键渲染职责包括页头返回全部公司列表的链接← All Companies、{{ title }}渐变标题、CTA 按钮、地区与远程政策标签正文区{{ content | safe }}输出 Markdown 渲染后的正文并附 Tech Stack 区块循环渲染technologies标签页脚返回列表按钮、Edit on GitHub 按钮、updatedAt更新时间CSS 局部样式通过{%- css local -%}bundle 内联各标签tag--region、tag--policy、tag--tech与公司页排版样式。该布局还利用 Eleventy 的markdownTemplateEngine: njk见 eleventy.config.js允许在 Markdown 正文中直接使用模板变量与标签实现内容与模板的双向融合。四、档案如何被聚合与浏览集合Collections机制档案进入站点后通过 eleventy.config.js 注册的九个集合对外提供各类聚合视图。与公司档案直接相关的有集合逻辑位置用途companiescollections.jsgetAllCompanies全部公司按名称字母排序featuredCompaniescollections.jsgetFeaturedCompanies从精选名单中随机取 8 家展示于首页recentCompaniescollections.jsgetRecentCompanies按addedAt取最近 12 家新增companiesByRegioncollections.jsgetCompaniesByRegion按region字段分组companiesByTechcollections.jsgetCompaniesByTech按technologies数组分组companyTagscollections.jsgetCompanyTags生成技术/地区/远程政策三类浏览标签页的数据含公司计数在getCompanyTags中MixRank 档案会被同时写入technology.javascript、technology.linux、technology.python、technology.sql、region.worldwide、remote-policy[remote-friendly]六个标签组并带上title、slug、website、region、remote_policy摘要信息。所有标签按公司数量降序排序后供 src/pages/tag.njk 与 src/pages/tags.njk 渲染为浏览页。值得注意的性能细节getCompanies对getFilteredByGlob(./src/companies/**/*.md)的结果做了模块级缓存_companyCache避免对约 850 家公司重复过滤 6 次见 collections.js 的注释。所有集合都复用它因此companiesByRegion、companiesByTech、companyTags等聚合共享同一份内存数据构建时只执行一次目录扫描。五、给 MixRank 这份档案画像数据全景综合 frontmatter 与正文MixRank 档案在目录中的完整画像如下定位每月处理 PB 级多源数据网络爬虫、应用商店、社交媒体等的数据产品公司客户含 Google、Amazon、Facebook、Intel、Adobe横跨销售、营销、金融、安全行业规模30 员工属small11-50 人档远程政策remote-friendly友好型允许远程正文自述 Fully-remote完全远程招聘地区worldwide全球不限地区技术栈浏览聚合标签为 JavaScript、Linux、Python、SQL正文完整技术栈为 Python、PostgreSQL、Linux、Javascript、TypeScript、Nix、Git申请入口通过其 Y Combinator 公司页面申请careers_url指向该页因此档案页主按钮为 Apply Now加入时间2022-09-25 加入2022-10-01 更新。这份画像同时展示了该目录的选录标准公司在或围绕科技行业、提供真实的远程工作机会、直接雇佣员工且档案信息可被验证详见 CONTRIBUTING.md 的 What Belongs in the Directory。六、如何自行验证与扩展本地构建在仓库根目录运行npm run build即可验证档案是否正常构建CONTRIBUTING.md 推荐的贡献流程第 3 步新增公司按src/companies/{slug}.md命名创建文件填写 frontmatter 与必填小节## Company blurb、## Remote status、## How to apply字段取值严格对照上文的合法值表深度阅读完整渲染逻辑见 src/_layouts/company.njk字段标签映射见 src/_data/labels.js聚合与浏览逻辑见 src/_config/collections.jsSEO 描述生成见 src/companies/companies.11tydata.js站内归档规范见 CONTRIBUTING.md。通过 MixRank 这一完整样例你可以把src/companies/下任意档案如 github.md、gitlab.md映射到同一套字段语义与渲染管线——这就是 remoteintech.company 目录保持数据一致性与可维护性的核心机制。赞分享数据集【免费下载链接】remote-jobsSource for remoteintech.company — a community-maintained directory of remote-friendly tech companies项目地址https://gitcode.com/GitHub_Trending/re/remote-jobs点击查看免费下载相关推荐remoteintech.company 公司档案数据模型解析以 Boldare 全远程团队档案为例remoteintech.company 公司档案数据模型解析以 Boldare 全远程团队档案为例 本篇以远程工作公司目录 remoteintech.com数据集remoteintech.company 公司档案深度解析以 Lambda School 为例的完全远程公司数据模型remoteintech.company 公司档案深度解析以 Lambda School 为例的完全远程公司数据模型 导读 本文以开源仓库 GitHub_Tr数据集remoteintech.company 公司档案数据规范解析以 DealDash 为例remoteintech.company 公司档案数据规范解析以 DealDash 为例 remoteintech.company 是一个由社区维护的远程友好数据集上一篇WarcraftHelper实测解锁FPS、宽屏适配、解除4MB地图限制1.27b也能跑满144Hz下一篇智慧教育平台电子教材下载解析器教程3步批量保存电子课本PDF创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
觉得有用,分享给同行:

为您的企业打造数字门面

稳重轻奢商务风格,端正雅致视觉,长效耐看不易过时。

立即咨询 →