diff --git a/home/home.go b/home/home.go
index ebc2fd75..9c9ea36c 100644
--- a/home/home.go
+++ b/home/home.go
@@ -75,7 +75,7 @@ var landingTemplate = `
Mu
The Micro Network
- The internet without the noise.
+ No ads, no algorithms, no tracking.
News, markets, video, search, and AI tools — all in one place. Build your own or let the agent build one for you.
diff --git a/markets/markets.go b/markets/markets.go
index a9b98aa9..4f1bb64d 100644
--- a/markets/markets.go
+++ b/markets/markets.go
@@ -255,24 +255,33 @@ func fetchCoinGeckoChanges() map[string]float64 {
}
func generateMarketsCardHTML(prices map[string]float64) string {
- var sb strings.Builder
- sb.WriteString(`
`)
-
allTickers := append([]string{}, tickers...)
allTickers = append(allTickers, futuresKeys...)
- sort.Slice(allTickers, func(i, j int) bool {
- if len(allTickers[i]) != len(allTickers[j]) {
- return len(allTickers[i]) < len(allTickers[j])
- }
- return allTickers[i] < allTickers[j]
- })
+ sort.Strings(allTickers)
- for _, ticker := range allTickers {
- price := prices[ticker]
- fmt.Fprintf(&sb, `
%s$%.2f
`, ticker, price)
+ // 4 rows x 2 columns table, show first 8 alphabetically
+ show := allTickers
+ if len(show) > 8 {
+ show = show[:8]
}
- sb.WriteString(`
`)
+ var sb strings.Builder
+ sb.WriteString(``)
+ for i := 0; i < len(show); i += 2 {
+ sb.WriteString(``)
+ for col := 0; col < 2; col++ {
+ idx := i + col
+ if idx < len(show) {
+ ticker := show[idx]
+ price := prices[ticker]
+ fmt.Fprintf(&sb, `| %s | $%.2f | `, ticker, price)
+ } else {
+ sb.WriteString(` | | `)
+ }
+ }
+ sb.WriteString(`
`)
+ }
+ sb.WriteString(`
`)
return sb.String()
}
diff --git a/markets/markets_test.go b/markets/markets_test.go
index 18702c79..6890b9e8 100644
--- a/markets/markets_test.go
+++ b/markets/markets_test.go
@@ -120,8 +120,8 @@ func TestGenerateMarketsCardHTML(t *testing.T) {
"GOLD": 2000,
}
html := generateMarketsCardHTML(prices)
- if !strings.Contains(html, "market-grid") {
- t.Error("expected market-grid class")
+ if !strings.Contains(html, "