Skip to content

Commit 874e8b7

Browse files
authored
docs: add product update about documentation (#7056)
1 parent 7a39b32 commit 874e8b7

File tree

1 file changed

+99
-0
lines changed
  • packages/web/docs/src/app/product-updates/(posts)/2025-10-01-docs

1 file changed

+99
-0
lines changed
Lines changed: 99 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,99 @@
1+
---
2+
title: Documentation Update
3+
description:
4+
Documentation is hard. You have to strike a balance between what's useful and what's excessive;
5+
and organize it in a way that is equally clear and easy to search.
6+
date: 2025-10-01
7+
authors: [jdolle]
8+
---
9+
10+
In this update, rather than focus on new features of Hive, we'll be highlighting some of our
11+
thoughts and reasoning for as well as strategies applied in the recent changes to the
12+
[Hive documentation](/docs).
13+
14+
It feels a bit silly to be posting an update about documentation, but it's important as open source
15+
developers to treat documentation as an extension of our code. Documentation gives a place to
16+
explain things in far more detail or to a specific audience. It would be impossible to convey such
17+
detail through the user interface or API alone.
18+
19+
So what motivated us to take a closer look at our documentation?
20+
21+
### A fundamental shift in how we think about Hive
22+
23+
Hive started as "only" a schema registry. We weren't sure what direction this would go in the
24+
future, but thought features would keep being added to the core product. We also knew people needed
25+
to be able to self-host Hive. So this lead to a common industry distinction of "cloud" vs
26+
"self-hosting" offerings.
27+
28+
At the time, this made sense. GraphQL Federation was still young and GraphQL routers in their
29+
infancy. But Federation was growing and the need for a powerful and customizable router was clear.
30+
We knew it needed to work well with our schema registry also, and to make that point clear to
31+
others, this router was called Hive Gateway. More recently, our offerings have expanded to include a
32+
Hive Logger, built with our logging needs and best practices in mind, and soon a new Hive Router,
33+
written in Rust.
34+
35+
**Hive is growing...**
36+
37+
Our suite is growing and it's become confusing to talk about "Hive" as a cloud service, since these
38+
products span different spaces. What was once called "Hive" is now a part of the whole. The schema
39+
registry has expanded as expected, but so has the brand. And so we needed to adapt.
40+
41+
This has been a very organic process for us. Which honestly is great because we can find gaps in the
42+
GraphQL ecosystem, work on solutions, and let our work inform our brand. We can be sure that we're
43+
building solutions to real problems because of this, but our documentation had some growing pains as
44+
a result.
45+
46+
### Input from the community
47+
48+
Feedback and questions from the community have made the shortcomings of our documentation even more
49+
clear. There was often confusion around cloud hosting our Gateway (which we don't offer, at least at
50+
this time). Additionally, our API Reference documentation was scattered and we'd often get questions
51+
about how to do certain custom tasks.
52+
53+
Rather than get annoyed any time a question is asked more than once, it's best to take a look at the
54+
cause. 99% of the time it's because the documentation is missing, hard to find, or generally
55+
unclear.
56+
57+
### Industry changes
58+
59+
GraphQL has been changing this whole time as well. As mentioned before, Federation was new when Hive
60+
was first built. People are much more familiar with the concepts of Federation now and it's been
61+
gradually shifting from a single company's offering (Apollo Federation) to an
62+
[open spec](https://open-federation.org/) (GraphQL Federation). So terminology needs updated.
63+
64+
## What we did
65+
66+
### Let the products speak
67+
68+
We updated the [introduction/landing page](https://the-guild.dev/graphql/hive/docs) to instantly
69+
showcase our product offerings. This makes it clear that these are modular, pieces of the whole, and
70+
gives us a fantastic place to briefly introduce each. Additionally, since Hive Console was the only
71+
product in the past, there were a lot of documents that were specific to Hive Console that were
72+
still at the root of the Hive documentation. This was solved by creating separate pages for each
73+
product and moving these pages inside.
74+
75+
### Collapse when possible
76+
77+
Previously there were separate root level pages for CLI/API References, Specifications, and our
78+
public GraphQL API. This was because we thought each had a separate audience and were conceptually
79+
different, but what we've discovered is that if people are looking at reference documentation, then
80+
they likely care about all of this. The audience for all of these sections included "power users",
81+
who wanted to write custom tools or interfaces for Hive. So we collapsed all of this to a single
82+
location, making it easier for power users to browse for what they need. -- And this is just one
83+
instance. There were (and probably still are) numerous parts of our documentation that were
84+
redundant.
85+
86+
## Conclusion
87+
88+
Much like our code bases, documentation ages. Not only because of UI or API changes, but because the
89+
entire product or the world around it might change. Staying organized helps since pages are more
90+
searchable, but documentation is often too easy to forget to update.
91+
92+
Hopefully you've found this post interesting and learned a little more about Hive in the process. I
93+
have no doubt that our documentation will continue to evolve alongside Hive moving forward. And if
94+
you see something that doesn't make sense, don't hesitate to ask. There's no such thing as a stupid
95+
question -- there's only neglected documentation.
96+
97+
---
98+
99+
[Check out the latest Hive documentation](/docs)

0 commit comments

Comments
 (0)