资讯动态

Asana 远程优先档案深度解析:remoteintech.company 公司条目的数据模型与渲染管线

发布时间:2026/10/1 11:54:46 来源:尧图企业网站定制
数据集【免费下载链接】remote-jobsSource for remoteintech.company — a community-maintained directory of remote-friendly tech companies项目地址https://gitcode.com/GitHub_Trending/re/remote-jobs点击查看免费下载本篇技术指南以 Remote In Techremoteintech.company开源目录中的 src/companies/asana.md 这条真实公司档案为样本逐层拆解 Asana 的公司介绍、远程政策、技术栈与申请方式并对照仓库中的 frontmatter 模板、标签字典、集合逻辑与页面布局还原一条「远程友好公司」档案从 Markdown 数据到静态页面的完整链路。读完后你将掌握该目录条目的字段规范、取值约束、渲染机制与贡献流程能够独立评估或新增同类公司档案。档案速览Asana 是谁档案里写了什么src/companies/asana.md 是 Asana 在目录中的完整档案共包含七个信息块公司简介blurb、公司规模、远程状态、覆盖区域、公司技术、办公地点与申请方式。先完整还原档案原文的核心事实公司定位Asana 是一款工作管理平台work management platform帮助团队组织、跟踪并管理工作。据档案原文其拥有超过 10 万付费客户覆盖 190 多个国家与地区使命是让团队无缝协作从而带来更高生产力与成功率。公司规模LinkedIn 显示员工数 1700company_size: enterprise对应「1000 员工」档位。远程状态远程优先remote-first允许团队成员在全球任何地点工作按价值观而非地理位置招聘。覆盖区域全球Worldwide。技术栈Go 与 JavaScriptfrontmatter 中technologies: [go, javascript]。办公地点美国旧金山、美国纽约、爱尔兰都柏林、澳大利亚悉尼四地。申请方式官方招聘页面frontmatter 中careers_url: https://asana.com/jobs。这些事实全部来自档案正文与 frontmatter是后续所有数据模型与渲染机制讲解的输入样本。Frontmatter 数据模型逐字段拆解 Asana 条目一条公司档案由 YAML frontmatter 与 Markdown 正文两部分组成。Asana 条目的 frontmatter 完整内容如下摘自 src/companies/asana.md--- title: Asana slug: asana website: https://asana.com/ careers_url: https://asana.com/jobs region: worldwide remote_policy: remote-first company_size: enterprise technologies: - go - javascript addedAt: 2024-10-15 updatedAt: 2024-10-15 ---对照 CONTRIBUTING.md 给出的标准模板可逐字段理解其含义与约束字段Asana 取值含义允许取值来自 CONTRIBUTING.mdtitleAsana公司展示名任意字符串建议与官方名称一致slugasana文件名与 URL 标识必须与文件名一致slug: asana对应src/companies/asana.mdwebsitehttps://asana.com/公司官网合法的公司官网地址careers_urlhttps://asana.com/jobs招聘页地址必须是公司自有招聘页而非销售服务页regionworldwide招聘覆盖区域worldwide、americas、europe、americas-europe、asia-pacific、otherremote_policyremote-first远程工作政策fully-remote、remote-first、hybrid、remote-friendlycompany_sizeenterprise公司规模档位tiny(1-10)、small(11-50)、medium(51-200)、large(201-1000)、enterprise(1000)technologiesgo,javascript技术栈标签见下方「技术标签取值表」addedAt2024-10-15入库时间由维护者管理贡献者 PR 中不应包含updatedAt2024-10-15最后更新时间由维护者管理贡献者 PR 中不应包含Asana 档案的addedAt与updatedAt均为2024-10-15说明该条目在该日期入库。注意 CONTRIBUTING.md 明确要求贡献者不要在 PR 中携带这两个日期字段——它们由维护者统一管理用于驱动「最近新增公司」集合与页面底部的「Last updated」展示。取值约束与标签字典labels.js 单一事实来源上述取值的「合法集合」并非散落各处而是集中在 src/_data/labels.js 中统一维护。该文件是区域、远程政策、公司规模与技术标签的单一事实来源single source of truth同时被两处消费JS 侧通过 src/_data/companyHelpers.js 的regionLabels、remotePolicyLabels、companySizeLabels、techLabels再导出供集合逻辑使用模板侧通过 Eleventy 全局数据级联暴露为labels.*供 Nunjucks 模板直接取用。以 Asana 档案为例其三个枚举字段在字典中的映射为字段Asana 原始值字典映射后的展示文本region: worldwideworldwideWorldwide见 labels.jsremote_policy: remote-firstremote-firstRemote First见 labels.jscompany_size: enterpriseenterprise1000 employees见 labels.jstechnologies字段的取值同样受字典约束labels.js 中定义的全部技术标签包括javascript、typescript、react、nodejs、python、ruby、go、java、php、rust、dotnet、elixir、scala、swift、cloud、devops、docker、kubernetes、mobile、data、ml、sql、postgres、nosql、search。Asana 条目的go与javascript均属于合法取值分别渲染为Go与JavaScript标签。从源码结构看字典化的好处在于前端展示文本、浏览页分组键、集合计数三者共享同一套枚举只要新公司条目的 frontmatter 取值落在字典内其标签、分组与搜索归类就能自动一致无需额外维护。这解释了为什么 CONTRIBUTING.md 会以表格形式强制约束字段取值范围。从 Markdown 到页面渲染管线与元描述生成档案数据写好后由 Eleventy 构建管线消费。目录中每家公司共用 src/companies/companies.json 指定的company布局该布局模板实现在 src/_layouts/company.njk 中其渲染要点包括标题与返回链接页面头部渲染{{ title }}与「← All Companies」返回链接见 company.njk按钮与标签优先使用careers_url生成「Apply Now」主按钮否则回退到website的「Visit Website」随后按region、remote_policy渲染可点击的分类标签链接到对应的/browse/{region}/、/browse/{remote_policy}/浏览页见 company.njk。对 Asana 而言即渲染Worldwide与Remote First两个标签技术栈区块遍历technologies数组将go、javascript渲染为/browse/go/、/browse/javascript/下的技术标签见 company.njk更新时间页面底部依据updatedAt字段展示「Last updated: October 15, 2024」见 company.njk。另一处关键机制是元描述meta description的自动生成实现在 src/companies/companies.11tydata.js 的eleventyComputed.description中。其算法逻辑为若 frontmatter 已显式设置description则直接采用companies.11tydata.js否则用正则/##\s*Company\s*blurb\s*\n([\s\S]*?)(?\n##|$)/i从原始 Markdown 中提取## Company blurb小节的内容companies.11tydata.jsAsana 档案即命中该路径清理 Markdown 语法剥离text链接、*_等标记、合并换行与多余空格截断到约 155 字符优先在句号处截断其次在空格处截断并补...companies.11tydata.js。由于 Asana 的 blurb 正文超过 155 字符其最终元描述会落在第一个句号之后——这正是面向搜索引擎与社交分享的规范做法。集合与分类档案如何进入浏览与检索体系Asana 档案并非孤立页面它通过 src/_config/collections.js 中定义的多个集合进入站点的浏览与检索体系。该文件先将./src/companies/**/*.md的全部档案做内存缓存collections.js可避免约 850 个条目被多次过滤再派生出getAllCompanies全部公司按title字母序排序供/companies/列表页使用collections.jsgetRecentCompanies按addedAt倒序取最近 12 条。Asana 的addedAt为 2024-10-15是判断其是否进入「近期新增」区块的依据collections.jsgetCompaniesByRegion按region分组Asana 的worldwide使其进入 Worldwide 浏览组collections.jsgetCompaniesByTech遍历每家公司technologies数组建立技术分组Asana 同时出现在 Go 与 JavaScript 两个技术组中collections.jsgetCompanyTags汇总technology、region、remote-policy三类标签附上公司计数并按数量倒序供标签浏览页使用collections.js。值得一提的边界首页的「Featured Companies」使用 src/_data/companyHelpers.js 中手工维护的featuredCompanySlugs精选列表automattic、stripe、netlify、github、linear、zapier、buffer、vercelAsana 不在其中——说明该目录同时存在「算法分组」区域/技术/政策与「人工精选」首页推荐两套并行的曝光机制。如何贡献或维护一条这样的档案理解了 Asana 档案的结构就可以按 CONTRIBUTING.md 的流程新增或维护同类条目。核心步骤如下在src/companies/下新建{slug}.md文件文件名必须与 frontmatter 的slug一致按模板填写 frontmattertitle、slug、website、careers_url、region、remote_policy、company_size、technologies正文必须包含三个##小节## Company blurb、## Remote status、## How to applyCONTRIBUTING.md## Company size、## Region、## Company technologies为常用可选小节——Asana 档案七个小节全部齐备是符合规范的标准样例运行npm run build验证构建然后提交 PR。仓库通过Validate Company ProfilesGitHub Action 对涉及公司文件的 PR 自动校验机器人会在 PR 评论区指出问题并阻塞合并直到修正CONTRIBUTING.md。此外目录设有明确的准入红线CONTRIBUTING.md公司必须直接雇佣员工不接受训练营、中介或自由职业平台、必须提供真实远程岗位纯佣金或独立承包销售不计数、必须属于或围绕科技行业且careers_url必须指向公司自有招聘页。维护者还会拒绝内容过少或重复的档案。在本仓库中验证与构建该档案是仓库的一部分可本地构建验证。按 README.md 的说明npm install # 安装依赖 npm run start # 开发服务器支持热重载 npm run build # 生产构建环境要求为 Node.js 22。构建完成后Asana 档案会与其他约 850 条公司档案一起经 src/_config/collections.js 的集合逻辑与 src/_layouts/company.njk 的布局模板渲染为静态页面供 CONTRIBUTING.md 中的校验机器人与本仓库维护流程持续验证。综上一条看似简单的 Asana 公司档案实际串联了 frontmatter 数据模型、labels.js标签字典、companies.11tydata.js元描述生成、company.njk页面布局与collections.js分类体系五层机制。以它为样例可以快速掌握 remoteintech.company 目录条目的全部规范与实现细节。赞分享数据集【免费下载链接】remote-jobsSource for remoteintech.company — a community-maintained directory of remote-friendly tech companies项目地址https://gitcode.com/GitHub_Trending/re/remote-jobs点击查看免费下载相关推荐解析 Ad Hoc 远程优先档案remoteintech.company 公司目录的数据结构与渲染原理解析 Ad Hoc 远程优先档案remoteintech.company 公司目录的数据结构与渲染原理 本篇技术指南以 src/companies/ad ho数据集Miles REINFORCE 配方详解无参考模型下稳住 LLM 强化学习训练的 5 个关键Miles REINFORCE 配方详解无参考模型下稳住 LLM 强化学习训练的 5 个关键 Miles 是一个面向企业的 LLM/VLM 大规模后训练强数据集BDUSS Cookie安全吗pan-baidu-download的~/.baidu.cookies存储机制与5个防护要点完整解析BDUSS Cookie安全吗pan baidu download的~/.baidu.cookies存储机制与5个防护要点完整解析 pan baidu dow数据集创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑