diff --git a/appview/config/config.go b/appview/config/config.go index d21572b3..d029339b 100644 --- a/appview/config/config.go +++ b/appview/config/config.go @@ -139,8 +139,8 @@ type BlueskyConfig struct { UpdateInterval time.Duration `env:"UPDATE_INTERVAL, default=1h"` } -type OgcardConfig struct { - Host string `env:"HOST, default=https://og.tangled.org"` +type OgreConfig struct { + Host string `env:"HOST, default=https://ogre.tangled.network"` } func (cfg RedisConfig) ToURL() string { @@ -175,7 +175,7 @@ type Config struct { Bluesky BlueskyConfig `env:",prefix=TANGLED_BLUESKY_"` Sites SitesConfig `env:",prefix=TANGLED_SITES_"` KnotMirror KnotMirrorConfig `env:",prefix=TANGLED_KNOTMIRROR_"` - Ogcard OgcardConfig `env:",prefix=TANGLED_OGCARD_"` + Ogre OgreConfig `env:",prefix=TANGLED_OGRE_"` } func LoadConfig(ctx context.Context) (*Config, error) { diff --git a/appview/issues/issues.go b/appview/issues/issues.go index eaa27766..48727193 100644 --- a/appview/issues/issues.go +++ b/appview/issues/issues.go @@ -23,7 +23,7 @@ import ( "tangled.org/core/appview/models" "tangled.org/core/appview/notify" "tangled.org/core/appview/oauth" - "tangled.org/core/appview/ogcard" + "tangled.org/core/ogre" "tangled.org/core/appview/pages" "tangled.org/core/appview/pages/repoinfo" "tangled.org/core/appview/pagination" @@ -49,7 +49,7 @@ type Issues struct { logger *slog.Logger validator *validator.Validator indexer *issues_indexer.Indexer - ogcardClient *ogcard.Client + ogreClient *ogre.Client } func New( @@ -79,7 +79,7 @@ func New( logger: logger, validator: validator, indexer: indexer, - ogcardClient: ogcard.NewClient(config.Ogcard.Host), + ogreClient: ogre.NewClient(config.Ogre.Host), } } diff --git a/appview/issues/opengraph.go b/appview/issues/opengraph.go index 5fae97e6..ad311127 100644 --- a/appview/issues/opengraph.go +++ b/appview/issues/opengraph.go @@ -7,7 +7,7 @@ import ( "time" "tangled.org/core/appview/models" - "tangled.org/core/appview/ogcard" + "tangled.org/core/ogre" ) func (rp *Issues) IssueOpenGraphSummary(w http.ResponseWriter, r *http.Request) { @@ -49,7 +49,7 @@ func (rp *Issues) IssueOpenGraphSummary(w http.ResponseWriter, r *http.Request) commentCount := len(issue.Comments) - payload := ogcard.IssueCardPayload{ + payload := ogre.IssueCardPayload{ Type: "issue", RepoName: f.Name, OwnerHandle: ownerHandle, @@ -57,13 +57,13 @@ func (rp *Issues) IssueOpenGraphSummary(w http.ResponseWriter, r *http.Request) Title: issue.Title, IssueNumber: issue.IssueId, Status: status, - Labels: []ogcard.LabelData{}, + Labels: []ogre.LabelData{}, CommentCount: commentCount, ReactionCount: 0, CreatedAt: issue.Created.Format(time.RFC3339), } - imageBytes, err := rp.ogcardClient.RenderIssueCard(r.Context(), payload) + imageBytes, err := rp.ogreClient.RenderIssueCard(r.Context(), payload) if err != nil { log.Println("failed to render issue card", err) http.Error(w, "failed to render issue card", http.StatusInternalServerError) diff --git a/appview/pulls/opengraph.go b/appview/pulls/opengraph.go index 96a5635d..4e3e8fe4 100644 --- a/appview/pulls/opengraph.go +++ b/appview/pulls/opengraph.go @@ -7,7 +7,7 @@ import ( "time" "tangled.org/core/appview/models" - "tangled.org/core/appview/ogcard" + "tangled.org/core/ogre" "tangled.org/core/patchutil" ) @@ -71,7 +71,7 @@ func (s *Pulls) PullOpenGraphSummary(w http.ResponseWriter, r *http.Request) { rounds = 1 } - payload := ogcard.PullRequestCardPayload{ + payload := ogre.PullRequestCardPayload{ Type: "pullRequest", RepoName: f.Name, OwnerHandle: ownerHandle, @@ -88,7 +88,7 @@ func (s *Pulls) PullOpenGraphSummary(w http.ResponseWriter, r *http.Request) { CreatedAt: pull.Created.Format(time.RFC3339), } - imageBytes, err := s.ogcardClient.RenderPullRequestCard(r.Context(), payload) + imageBytes, err := s.ogreClient.RenderPullRequestCard(r.Context(), payload) if err != nil { log.Println("failed to render pull request card", err) http.Error(w, "failed to render pull request card", http.StatusInternalServerError) diff --git a/appview/pulls/pulls.go b/appview/pulls/pulls.go index 34fa68ca..fbcb9f17 100644 --- a/appview/pulls/pulls.go +++ b/appview/pulls/pulls.go @@ -26,7 +26,7 @@ import ( "tangled.org/core/appview/models" "tangled.org/core/appview/notify" "tangled.org/core/appview/oauth" - "tangled.org/core/appview/ogcard" + "tangled.org/core/ogre" "tangled.org/core/appview/pages" "tangled.org/core/appview/pages/markup" "tangled.org/core/appview/pages/repoinfo" @@ -66,7 +66,7 @@ type Pulls struct { logger *slog.Logger validator *validator.Validator indexer *pulls_indexer.Indexer - ogcardClient *ogcard.Client + ogreClient *ogre.Client } func New( @@ -96,7 +96,7 @@ func New( logger: logger, validator: validator, indexer: indexer, - ogcardClient: ogcard.NewClient(config.Ogcard.Host), + ogreClient: ogre.NewClient(config.Ogre.Host), } } diff --git a/appview/repo/opengraph.go b/appview/repo/opengraph.go index 46c677a6..531315e2 100644 --- a/appview/repo/opengraph.go +++ b/appview/repo/opengraph.go @@ -9,7 +9,7 @@ import ( "github.com/go-enry/go-enry/v2" "tangled.org/core/appview/db" - "tangled.org/core/appview/ogcard" + "tangled.org/core/ogre" "tangled.org/core/orm" "tangled.org/core/types" ) @@ -69,18 +69,18 @@ func (rp *Repo) Opengraph(w http.ResponseWriter, r *http.Request) { }) } - var ogLanguages []ogcard.LanguageData + var ogLanguages []ogre.LanguageData for _, lang := range languageStats { if len(ogLanguages) >= 5 { break } - ogLanguages = append(ogLanguages, ogcard.LanguageData{ + ogLanguages = append(ogLanguages, ogre.LanguageData{ Color: lang.Color, Percentage: lang.Percentage, }) } - payload := ogcard.RepositoryCardPayload{ + payload := ogre.RepositoryCardPayload{ Type: "repository", RepoName: f.Name, OwnerHandle: ownerHandle, @@ -92,7 +92,7 @@ func (rp *Repo) Opengraph(w http.ResponseWriter, r *http.Request) { Languages: ogLanguages, } - imageBytes, err := rp.ogcardClient.RenderRepositoryCard(r.Context(), payload) + imageBytes, err := rp.ogreClient.RenderRepositoryCard(r.Context(), payload) if err != nil { log.Println("failed to render repository card", err) http.Error(w, "failed to render repository card", http.StatusInternalServerError) diff --git a/appview/repo/repo.go b/appview/repo/repo.go index 46609518..ac2eabc0 100644 --- a/appview/repo/repo.go +++ b/appview/repo/repo.go @@ -20,7 +20,7 @@ import ( "tangled.org/core/appview/models" "tangled.org/core/appview/notify" "tangled.org/core/appview/oauth" - "tangled.org/core/appview/ogcard" + "tangled.org/core/ogre" "tangled.org/core/appview/pages" "tangled.org/core/appview/reporesolver" "tangled.org/core/appview/validator" @@ -54,7 +54,7 @@ type Repo struct { serviceAuth *serviceauth.ServiceAuth validator *validator.Validator cfClient *cloudflare.Client - ogcardClient *ogcard.Client + ogreClient *ogre.Client } func New( @@ -84,7 +84,7 @@ func New( logger: logger, validator: validator, cfClient: cfClient, - ogcardClient: ogcard.NewClient(config.Ogcard.Host), + ogreClient: ogre.NewClient(config.Ogre.Host), } } diff --git a/appview/ogcard/.gitignore b/ogre/.gitignore similarity index 100% rename from appview/ogcard/.gitignore rename to ogre/.gitignore diff --git a/appview/ogcard/bun.lock b/ogre/bun.lock similarity index 99% rename from appview/ogcard/bun.lock rename to ogre/bun.lock index e2f42ab9..1abcf55a 100644 --- a/appview/ogcard/bun.lock +++ b/ogre/bun.lock @@ -3,11 +3,11 @@ "configVersion": 1, "workspaces": { "": { - "name": "@tangled/ogcard-worker", + "name": "@tangled/ogre-worker", "dependencies": { "@fontsource/inter": "^5.2.8", "@resvg/resvg-wasm": "^2.6.2", - "@tangled/ogcard-runtime": "*", + "@tangled/ogre-runtime": "*", "lucide-static": "^0.577.0", "preact": "^10.29.0", "satori": "0.25.0", @@ -24,7 +24,7 @@ }, }, "packages/runtime": { - "name": "@tangled/ogcard-runtime", + "name": "@tangled/ogre-runtime", "version": "1.0.0", }, }, @@ -267,7 +267,7 @@ "@speed-highlight/core": ["@speed-highlight/core@1.2.15", "", {}, "sha512-BMq1K3DsElxDWawkX6eLg9+CKJrTVGCBAWVuHXVUV2u0s2711qiChLSId6ikYPfxhdYocLNt3wWwSvDiTvFabw=="], - "@tangled/ogcard-runtime": ["@tangled/ogcard-runtime@workspace:packages/runtime"], + "@tangled/ogre-runtime": ["@tangled/ogre-runtime@workspace:packages/runtime"], "@tybys/wasm-util": ["@tybys/wasm-util@0.10.1", "", { "dependencies": { "tslib": "^2.4.0" } }, "sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg=="], diff --git a/appview/ogcard/client.go b/ogre/client.go similarity index 99% rename from appview/ogcard/client.go rename to ogre/client.go index 98d6ba69..b6ea7128 100644 --- a/appview/ogcard/client.go +++ b/ogre/client.go @@ -1,4 +1,4 @@ -package ogcard +package ogre import ( "bytes" diff --git a/appview/ogcard/knip.json b/ogre/knip.json similarity index 100% rename from appview/ogcard/knip.json rename to ogre/knip.json diff --git a/appview/ogcard/package.json b/ogre/package.json similarity index 90% rename from appview/ogcard/package.json rename to ogre/package.json index 60819cd2..227cf709 100644 --- a/appview/ogcard/package.json +++ b/ogre/package.json @@ -1,5 +1,5 @@ { - "name": "@tangled/ogcard-worker", + "name": "@tangled/ogre-worker", "version": "1.0.0", "private": true, "type": "module", @@ -16,7 +16,7 @@ "dependencies": { "@fontsource/inter": "^5.2.8", "@resvg/resvg-wasm": "^2.6.2", - "@tangled/ogcard-runtime": "*", + "@tangled/ogre-runtime": "*", "lucide-static": "^0.577.0", "preact": "^10.29.0", "satori": "0.25.0", diff --git a/appview/ogcard/packages/runtime/index.ts b/ogre/packages/runtime/index.ts similarity index 100% rename from appview/ogcard/packages/runtime/index.ts rename to ogre/packages/runtime/index.ts diff --git a/appview/ogcard/packages/runtime/package.json b/ogre/packages/runtime/package.json similarity index 83% rename from appview/ogcard/packages/runtime/package.json rename to ogre/packages/runtime/package.json index 9740626f..c27b4925 100644 --- a/appview/ogcard/packages/runtime/package.json +++ b/ogre/packages/runtime/package.json @@ -1,5 +1,5 @@ { - "name": "@tangled/ogcard-runtime", + "name": "@tangled/ogre-runtime", "version": "1.0.0", "private": true, "type": "module", diff --git a/appview/ogcard/packages/runtime/types.ts b/ogre/packages/runtime/types.ts similarity index 100% rename from appview/ogcard/packages/runtime/types.ts rename to ogre/packages/runtime/types.ts diff --git a/appview/ogcard/packages/runtime/workerd.ts b/ogre/packages/runtime/workerd.ts similarity index 100% rename from appview/ogcard/packages/runtime/workerd.ts rename to ogre/packages/runtime/workerd.ts diff --git a/ogre/readme.md b/ogre/readme.md new file mode 100644 index 00000000..3a4576c4 --- /dev/null +++ b/ogre/readme.md @@ -0,0 +1,3 @@ +# ogre: open graph rendering engine + +👹 diff --git a/appview/ogcard/src/__tests__/assets/avatar.jpg b/ogre/src/__tests__/assets/avatar.jpg similarity index 100% rename from appview/ogcard/src/__tests__/assets/avatar.jpg rename to ogre/src/__tests__/assets/avatar.jpg diff --git a/appview/ogcard/src/__tests__/fixtures.ts b/ogre/src/__tests__/fixtures.ts similarity index 100% rename from appview/ogcard/src/__tests__/fixtures.ts rename to ogre/src/__tests__/fixtures.ts diff --git a/appview/ogcard/src/__tests__/render.test.ts b/ogre/src/__tests__/render.test.ts similarity index 100% rename from appview/ogcard/src/__tests__/render.test.ts rename to ogre/src/__tests__/render.test.ts diff --git a/appview/ogcard/src/components/cards/issue.tsx b/ogre/src/components/cards/issue.tsx similarity index 100% rename from appview/ogcard/src/components/cards/issue.tsx rename to ogre/src/components/cards/issue.tsx diff --git a/appview/ogcard/src/components/cards/pull-request.tsx b/ogre/src/components/cards/pull-request.tsx similarity index 100% rename from appview/ogcard/src/components/cards/pull-request.tsx rename to ogre/src/components/cards/pull-request.tsx diff --git a/appview/ogcard/src/components/cards/repository.tsx b/ogre/src/components/cards/repository.tsx similarity index 72% rename from appview/ogcard/src/components/cards/repository.tsx rename to ogre/src/components/cards/repository.tsx index 6459fff8..0b93d1dd 100644 --- a/appview/ogcard/src/components/cards/repository.tsx +++ b/ogre/src/components/cards/repository.tsx @@ -7,14 +7,23 @@ import { FooterStats } from "../shared/footer-stats"; import { TYPOGRAPHY } from "../shared/constants"; import type { RepositoryCardData } from "../../validation"; +function repoNameFontSize(name: string): number { + // Available width ~1000px (1104px card content minus language circles area). + // Inter 600 average char width is ~0.58× the font size. + const maxSize = TYPOGRAPHY.repoName.fontSize; + const fitted = Math.floor(1000 / (name.length * 0.58)); + return Math.min(maxSize, Math.max(fitted, 48)); +} + export function RepositoryCard(data: RepositoryCardData) { + const fontSize = repoNameFontSize(data.repoName); return ( - + {data.repoName} diff --git a/appview/ogcard/src/components/shared/avatar.tsx b/ogre/src/components/shared/avatar.tsx similarity index 100% rename from appview/ogcard/src/components/shared/avatar.tsx rename to ogre/src/components/shared/avatar.tsx diff --git a/appview/ogcard/src/components/shared/card-header.tsx b/ogre/src/components/shared/card-header.tsx similarity index 100% rename from appview/ogcard/src/components/shared/card-header.tsx rename to ogre/src/components/shared/card-header.tsx diff --git a/appview/ogcard/src/components/shared/constants.ts b/ogre/src/components/shared/constants.ts similarity index 100% rename from appview/ogcard/src/components/shared/constants.ts rename to ogre/src/components/shared/constants.ts diff --git a/appview/ogcard/src/components/shared/footer-stats.tsx b/ogre/src/components/shared/footer-stats.tsx similarity index 100% rename from appview/ogcard/src/components/shared/footer-stats.tsx rename to ogre/src/components/shared/footer-stats.tsx diff --git a/appview/ogcard/src/components/shared/label-pill.tsx b/ogre/src/components/shared/label-pill.tsx similarity index 100% rename from appview/ogcard/src/components/shared/label-pill.tsx rename to ogre/src/components/shared/label-pill.tsx diff --git a/appview/ogcard/src/components/shared/language-circles.tsx b/ogre/src/components/shared/language-circles.tsx similarity index 100% rename from appview/ogcard/src/components/shared/language-circles.tsx rename to ogre/src/components/shared/language-circles.tsx diff --git a/appview/ogcard/src/components/shared/layout.tsx b/ogre/src/components/shared/layout.tsx similarity index 100% rename from appview/ogcard/src/components/shared/layout.tsx rename to ogre/src/components/shared/layout.tsx diff --git a/appview/ogcard/src/components/shared/logo.tsx b/ogre/src/components/shared/logo.tsx similarity index 100% rename from appview/ogcard/src/components/shared/logo.tsx rename to ogre/src/components/shared/logo.tsx diff --git a/appview/ogcard/src/components/shared/metrics.tsx b/ogre/src/components/shared/metrics.tsx similarity index 100% rename from appview/ogcard/src/components/shared/metrics.tsx rename to ogre/src/components/shared/metrics.tsx diff --git a/appview/ogcard/src/components/shared/stat-item.tsx b/ogre/src/components/shared/stat-item.tsx similarity index 100% rename from appview/ogcard/src/components/shared/stat-item.tsx rename to ogre/src/components/shared/stat-item.tsx diff --git a/appview/ogcard/src/components/shared/status-badge.tsx b/ogre/src/components/shared/status-badge.tsx similarity index 100% rename from appview/ogcard/src/components/shared/status-badge.tsx rename to ogre/src/components/shared/status-badge.tsx diff --git a/appview/ogcard/src/icons/lucide.tsx b/ogre/src/icons/lucide.tsx similarity index 100% rename from appview/ogcard/src/icons/lucide.tsx rename to ogre/src/icons/lucide.tsx diff --git a/appview/ogcard/src/index.tsx b/ogre/src/index.tsx similarity index 100% rename from appview/ogcard/src/index.tsx rename to ogre/src/index.tsx diff --git a/appview/ogcard/src/lib/render.ts b/ogre/src/lib/render.ts similarity index 86% rename from appview/ogcard/src/lib/render.ts rename to ogre/src/lib/render.ts index 11133042..ae5c4fb9 100644 --- a/appview/ogcard/src/lib/render.ts +++ b/ogre/src/lib/render.ts @@ -1,6 +1,6 @@ import type { VNode } from "preact"; -import { initSatori, initResvg, loadFonts } from "@tangled/ogcard-runtime"; -import type { ResvgClass } from "@tangled/ogcard-runtime/types"; +import { initSatori, initResvg, loadFonts } from "@tangled/ogre-runtime"; +import type { ResvgClass } from "@tangled/ogre-runtime/types"; let satoriFn: typeof import("satori").default | null = null; let Resvg: ResvgClass | null = null; diff --git a/appview/ogcard/src/types.d.ts b/ogre/src/types.d.ts similarity index 100% rename from appview/ogcard/src/types.d.ts rename to ogre/src/types.d.ts diff --git a/appview/ogcard/src/validation.ts b/ogre/src/validation.ts similarity index 100% rename from appview/ogcard/src/validation.ts rename to ogre/src/validation.ts diff --git a/appview/ogcard/tsconfig.json b/ogre/tsconfig.json similarity index 100% rename from appview/ogcard/tsconfig.json rename to ogre/tsconfig.json diff --git a/appview/ogcard/wrangler.jsonc b/ogre/wrangler.jsonc similarity index 77% rename from appview/ogcard/wrangler.jsonc rename to ogre/wrangler.jsonc index ccb7ea93..e35b9792 100644 --- a/appview/ogcard/wrangler.jsonc +++ b/ogre/wrangler.jsonc @@ -1,6 +1,6 @@ { "$schema": "node_modules/wrangler/config-schema.json", - "name": "tangled-ogcard-worker", + "name": "ogre", "main": "src/index.tsx", "compatibility_date": "2026-03-07", "observability": { @@ -8,8 +8,8 @@ }, "routes": [ { - "pattern": "og.tangled.org/*", - "zone_name": "tangled.org", + "pattern": "ogre.tangled.network", + "custom_domain": true, }, ], "vars": { diff --git a/pr.png b/pr.png new file mode 100644 index 0000000000000000000000000000000000000000..9d9f4fdca935ffd1bbff872035f993f6cfe3f17e GIT binary patch literal 45176 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%0A&}{)=YobM1<=^)1()HO|qW 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 Zo383NAN^M$@8*HR!qe5yWt~$(699(V