-
Notifications
You must be signed in to change notification settings - Fork 45
[EDU-2101] - Update llmstxt.ts to structure llms.txt a bit cleaner #2891
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
|
Important Review skippedAuto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the You can disable this status message by setting the ✨ Finishing touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@GregHolmes should we even have asset tracking in here since it is being deprecated?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a really great idea, Greg.
There's a few tweaks I think we need to make to Platform and Pub/Sub and I also wonder if we should look at breaking down other products too (at least maybe Chat and LiveObjects) into further categories. WDYT?
| channels: { category: 'Pub/Sub', subcategory: 'Channels' }, | ||
| connect: { category: 'Pub/Sub', subcategory: 'Connections' }, | ||
| 'getting-started': { category: 'Pub/Sub', subcategory: 'Getting Started' }, | ||
| guides: { category: 'Pub/Sub', subcategory: 'Guides' }, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This only has 1 at the moment and is for Chat... Let's move it into platform for now maybe.
| platform: { category: 'Platform', subcategory: 'Platform & Account' }, | ||
| auth: { category: 'Platform', subcategory: 'Authentication' }, | ||
| api: { category: 'Platform', subcategory: 'API Reference' }, | ||
| sdks: { category: 'Platform', subcategory: 'SDKs' }, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think there should be some additional sub-categories here:
- architecture
- pricing
- integrations
| connect: { category: 'Pub/Sub', subcategory: 'Connections' }, | ||
| 'getting-started': { category: 'Pub/Sub', subcategory: 'Getting Started' }, | ||
| guides: { category: 'Pub/Sub', subcategory: 'Guides' }, | ||
| 'how-to': { category: 'Pub/Sub', subcategory: 'How-To' }, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's remove this. I think it's time we removed the page too.
| 'metadata-stats': { category: 'Pub/Sub', subcategory: 'Metadata & Statistics' }, | ||
| 'presence-occupancy': { category: 'Pub/Sub', subcategory: 'Presence & Occupancy' }, | ||
| protocols: { category: 'Pub/Sub', subcategory: 'Protocols' }, | ||
| 'pub-sub': { category: 'Pub/Sub', subcategory: 'Pub/Sub Features' }, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This seems to be used for the Pub/Sub basics and advanced pages which seems odd. I wonder if we need an 'unclassified' product level one. So it's just a category of 'Pub/Sub' without a sub-category. WDYT?
| // Platform | ||
| platform: { category: 'Platform', subcategory: 'Platform & Account' }, | ||
| auth: { category: 'Platform', subcategory: 'Authentication' }, | ||
| api: { category: 'Platform', subcategory: 'API Reference' }, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think APIs should sit within the relevant product.
| sdks: { category: 'Platform', subcategory: 'SDKs' }, | ||
|
|
||
| // Pub/Sub - Core realtime messaging features | ||
| basics: { category: 'Pub/Sub', subcategory: 'Basics' }, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This just pulls in the product landing page. See my comment about an empty sub-category suggestion.
| - **Multiple Products**: Pub/Sub, Chat, LiveSync, LiveObjects, Spaces, Asset Tracking, and powerful integrations | ||
| - **Developer-Friendly SDKs**: SDKs available for JavaScript, Python, Java, Go, Swift, and many more languages |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Lost my comment these;
- Let's remove 'integrations' from a heading about products.
- Should we list all languages in the SDK row to make it complete?
95613e3 to
69fad7b
Compare
Description
Restructured llms.txt generation with product categorisation This update reorganises the generated llms.txt file from a flat list into a structured hierarchy with categories (Platform, Pub/Sub, Chat, Spaces, LiveObjects, LiveSync, Asset Tracking) and subcategories based on URL patterns. Added a more informative preamble describing Ably's core features, support for Kotlin and React languages, and logic to skip redundant language-specific URLs when the language already matches the page slug (e.g., prevents /getting-started/go?lang=go). The structured format improves LLM navigation and discovery of relevant documentation.
Attached an example of the llms.txt generated:
llms.txt
Build output: