Skip to content

Commit 8c50be2

Browse files
committed
fix: update star counts for hiero-consensus-node and hiero-mirror-node in repository stats
Signed-off-by: Daniel Ntege <danientege785@gmail.com>
1 parent c02faa3 commit 8c50be2

File tree

2 files changed

+71
-29
lines changed

2 files changed

+71
-29
lines changed

src/app/tsc/page.tsx

Lines changed: 69 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -24,12 +24,6 @@ const governanceResources = [
2424
"Read the formal scope, decision model, and operating rules for the Technical Steering Committee.",
2525
href: TECHNICAL_CHARTER_URL,
2626
},
27-
{
28-
title: "Meeting Calendar",
29-
description:
30-
"Join upcoming open TSC and project meetings and follow recurring governance discussions.",
31-
href: MEETING_CALENDAR_URL,
32-
},
3327
{
3428
title: "Governance Repository",
3529
description:
@@ -99,9 +93,8 @@ export default function TSCSection() {
9993
The Technical Steering Committee of Hiero
10094
</h1>
10195
<p className="text-base sm:text-lg max-w-150 mx-auto">
102-
The Hiero Technical Steering Committee (TSC) guides technical
103-
direction, stewarding open governance and cross-project alignment
104-
for the ecosystem.
96+
The Hiero Technical Steering Committee (TSC) is the committee
97+
responsible for technical governance within the Hiero project.
10598
</p>
10699
<div className="mt-7 flex flex-wrap justify-center gap-3">
107100
<a
@@ -133,16 +126,28 @@ export default function TSCSection() {
133126
<h2 id="tsc-about-heading" className="text-2xl sm:text-4xl mb-5">
134127
About the TSC
135128
</h2>
136-
<p className="text-lg mb-4">
137-
The TSC oversees technical governance for Hiero, helps prioritize
138-
architectural decisions, and coordinates implementation direction
139-
across maintainers and working groups.
140-
</p>
141-
<p className="text-lg text-gray">
142-
Its role is to keep project evolution transparent, practical, and
143-
aligned with open-source collaboration principles while preserving
144-
quality, security, and long-term maintainability.
145-
</p>
129+
<div className="space-y-4 text-lg text-gray">
130+
<p>
131+
The Hiero Technical Steering Committee (TSC) is a committee of
132+
members who serve the project&apos;s technical governance.
133+
</p>
134+
<p>
135+
The duties, goals, and rights of the TSC are defined in the{" "}
136+
<a
137+
href={TECHNICAL_CHARTER_URL}
138+
target="_blank"
139+
rel="noreferrer noopener"
140+
className="text-red underline hover:text-red-dark focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-red-light focus-visible:ring-offset-2"
141+
aria-label="Read the technical charter (opens in new tab)">
142+
technical charter
143+
</a>{" "}
144+
of the Hiero project.
145+
</p>
146+
<p>
147+
This page provides an overview of the current committee members
148+
and links to the core governance resources used by the project.
149+
</p>
150+
</div>
146151
</div>
147152
</div>
148153
</section>
@@ -154,7 +159,7 @@ export default function TSCSection() {
154159
Committee Members
155160
</h2>
156161
<p className="text-lg max-w-205">
157-
The committee includes contributors from across the Hiero
162+
The committee is composed of contributors from across the Hiero
158163
ecosystem. Member bios reflect their current roles and ongoing
159164
work in open-source governance and technical delivery.
160165
</p>
@@ -238,15 +243,15 @@ export default function TSCSection() {
238243
<h2
239244
id="tsc-resources-heading"
240245
className="text-2xl sm:text-4xl mb-5">
241-
Participation and Resources
246+
Governance Resources
242247
</h2>
243248
<p className="text-lg">
244-
Follow governance activity, review source documents, and join open
245-
meetings to participate in shaping Hiero technical direction.
249+
Review the charter and follow governance activity through the
250+
project&apos;s primary source materials.
246251
</p>
247252
</div>
248253

249-
<div className="grid grid-cols-1 md:grid-cols-3 gap-6 sm:gap-8">
254+
<div className="grid grid-cols-1 md:grid-cols-2 gap-6 sm:gap-8">
250255
{governanceResources.map(resource => (
251256
<a
252257
key={resource.title}
@@ -337,9 +342,15 @@ export default function TSCSection() {
337342
</a>
338343
) : null}
339344

340-
<p className="mt-5 text-base sm:text-lg">
341-
{selectedMember.bio ?? "Biography not available."}
342-
</p>
345+
<div className="mt-5 space-y-4 text-base text-gray sm:text-lg sm:leading-relaxed">
346+
{getBioParagraphs(
347+
selectedMember.bio ?? "Biography not available.",
348+
).map((paragraph, index) => (
349+
<p key={`${selectedMember.lastName}-${index}`}>
350+
{paragraph}
351+
</p>
352+
))}
353+
</div>
343354
</div>
344355
</div>
345356
</div>
@@ -359,6 +370,37 @@ function getBioPreview(bio: string, maxLength = 170): string {
359370
return `${trimmedBio.slice(0, maxLength)}...`;
360371
}
361372

373+
function getBioParagraphs(bio: string): string[] {
374+
const trimmedBio = bio.trim();
375+
376+
if (!trimmedBio) {
377+
return [];
378+
}
379+
380+
const explicitParagraphs = trimmedBio
381+
.split(/\n\s*\n/)
382+
.map(paragraph => paragraph.trim())
383+
.filter(Boolean);
384+
385+
if (explicitParagraphs.length > 1) {
386+
return explicitParagraphs;
387+
}
388+
389+
const sentences = trimmedBio.split(/(?<=[.!?])\s+/).filter(Boolean);
390+
391+
if (sentences.length <= 2) {
392+
return [trimmedBio];
393+
}
394+
395+
const paragraphs: string[] = [];
396+
397+
for (let index = 0; index < sentences.length; index += 2) {
398+
paragraphs.push(sentences.slice(index, index + 2).join(" "));
399+
}
400+
401+
return paragraphs;
402+
}
403+
362404
function getFocusableElements(container: HTMLDivElement | null): HTMLElement[] {
363405
if (!container) {
364406
return [];

src/data/repository_stats.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
2-
"hiero-consensus-node": { "stars": 387 },
2+
"hiero-consensus-node": { "stars": 388 },
33
"hiero-local-node": { "stars": 266 },
4-
"hiero-mirror-node": { "stars": 182 },
4+
"hiero-mirror-node": { "stars": 183 },
55
"hiero-improvement-proposals": { "stars": 176 },
66
"hiero-sdk-js": { "stars": 320 },
77
"hiero-sdk-java": { "stars": 254 },

0 commit comments

Comments
 (0)