Code reference detail
phonebook.json
reqlan rq/phonebook.json
| Idea | Status | Tags | Summary | Katz |
|---|---|---|---|---|
| current_link_icons | Slugs are defined on each link in ["../phonebook.json"]: - `site` → mdi / web - `vsc` → simple-icons / visualstudiocode - `openvsx` → simple-icons / vscodium ( proxy; no Open VSX slug in Simple Icons ) - `github` → simple-icons / github - `discord` → simple-icons / discord - `github-sponsors` → simple-icons / githubsponsors - `email` → mdi / email-outline - `sticker-form` → mdi / sticker-emoji Package entries under `packages` all use simple-icons / npm: - `language`, `analytical`, `cli` | 0.057 | ||
| iconify_stack | Icons use Iconify offline — bundled at build time, not fetched from a CDN at runtime. Icon data comes from npm packages listed under the `icons` key in ["../phonebook.json"] per [phonebook_reqs.phonebook_icons]. | 0.080 | ||
| phonebook_icon_keys | done | per [phonebook_reqs.phonebook_icons] A phonebook link or package can omit `icon`. If `icon` is present, it is an object with `set` and `name`. Set ids and lookup URLs are canonical in ["../phonebook.json"]. icons. Use each set's `search` URL to find replacement slugs when a name changes or an icon is removed upstream. Typed helpers live in [phonebook_script]: `formatPhonebookIconKey`, `getPhonebookIconSearchUrl`. | 0.048 | |
| scope | these requirements describe the actual development of the reqlan language and tooling itself | 0.040 | ||
| info_site_link | The header shows an info control that opens the project site in the system browser. Link id `site` from [phonebook_reqs.phonebook] per [phonebook_reqs.activity_bar_site_link]. Resolved in the extension host via ["../../../packages/extension/src/shared/phonebook.ts"] ( canonical data in ["../../phonebook.json"] ), not hardcoded in the webview. The webview receives the resolved label and href from [activity_bar_webview] and posts `openPhonebookLink` when the user activates the control. | 0.059 | ||
| local_graph_view | The activity bar provides a local graph view scoped to the current file or selected idea. The local graph should show direct and optionally indirect references with a configurable depth. | 0.055 | ||
| npm_packages | Publishable npm packages ( `@reqlan/language`, `@reqlan/analytical`, `@reqlan/cli`, `@reqlan/mcp` ) live under the `packages` key in ["./phonebook.json"]. Package ids are `language`, `analytical`, `cli`, and `mcp`. The site Links section renders them under Packages per ["./site/site.rq".links] / ["./site/site.rq".package_icons]. Typed helpers: `phonebookPackages`, `getPhonebookPackage` in ["../scripts/phonebook.ts"]. | 0.095 | ||
| phonebook | Canonical project links and publishable npm package URLs live in ["./phonebook.json"]. Modules that need contact, repo, marketplace, Discord, sponsorship, or npm package URLs should read from there instead of hardcoding values. Typed access is shared via ["../scripts/phonebook.ts"] for the site and extension README generator. | 0.176 | ||
| phonebook_icons | Icon sets and lookup URLs live under the `icons` key in ["./phonebook.json"]. A link or package can omit `icon`. If `icon` is present, it references a set id ( `simple-icons`, `mdi`, … ) and slug `name` from that set's catalog. Search a set at its `search` URL when renaming or replacing icons. Surfaces render icons with Iconify via the packages listed in each set's `package` field per ["./development/core.rq".iconify_stack]. Site registry: ["../site/src/lib/phonebook-icons.ts"] per ["./site/site.rq".icon_registry]. | 0.057 | ||
| show_in_footer | done | Each entry under `links` in ["./phonebook.json"] may set `show-in-footer`. The property is optional. Omitted means true. Set `show-in-footer` to false to keep a link out of the site footer and the landing contact list. Packages do not have this property. Schema: ["./phonebook.schema.json"]. Typed helpers: `isShownInFooter`, `phonebookFooterLinks` in ["../scripts/phonebook.ts"] and ["../site/src/lib/phonebook.ts"]. per ["./site/site.rq".footer] per ["./site/site.rq".links] | 0.072 | |
| certs | done | Certification lives under `/certs/`. Pages: - [assessment_page] at `/certs/assessment/` ( sole quiz when one [assessment]; catalog when more ) - one quiz per [assessment] at `/certs/assessment/[id]/` - [certificate_page] at `/certs/certificate/` The tutorials catalog and ["./support-page.rq".support_page] advocacy link send the user to [assessment_page]. Tokens are honor-system claims in ["../../site/src/lib/certificate-token.ts"]. Claim `a` is the [assessment] id ( not a section id ). | 0.054 | |
| sticker_form_embed | done | The just-completed [certificate_page] embeds phonebook link id `sticker-form` as a Google Form iframe. Href comes from [phonebook], not a hardcoded URL in the view. Convert the href to an embed `src` ( `viewform` plus `embedded=true` ). Keep a direct link to the same phonebook href if the iframe does not load. Hide the form when the user prints the certificate. | 0.048 | |
| icon_registry | done | [phonebook_icon_registry] maps phonebook icon keys to bundled Iconify data for the site. A link or package can omit `icon`. If `icon` is present, it must have a matching registry entry. The module throws at startup if a present icon does not resolve. When you add or change an icon in ["../phonebook.json"], update the registry import for that slug. per [development_core.iconify_stack] per [development_core.phonebook_icon_keys] | 0.064 | |
| package_icons | The contact Packages row in [contact_component] renders an icon beside each phonebook package label that has an icon. Package entries come from ["../phonebook.json"]. packages per [phonebook_reqs.npm_packages]. per [links] per [development_core.current_link_icons] | 0.070 | ||
| site | the / site folder contains a static Next. js App Router landing page for reqlan. should align with [brand] Copy modules: [copy] Document head: [meta_tags] | 0.040 |
Reference labels
"../../phonebook.json", "../phonebook.json", "./phonebook.json", ../../phonebook.json, ../phonebook.json, ./phonebook.json