Give every public route its own description, and keep canonicals and structured data on the host that serves the page.

Decorative images on the marketing pages stay quiet, and every dialog close button is named Close.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
adilalloandCursor committed 2026-11-04 11:04:52 -07:00
1 parent 0b6e8b00dd
commit c180e79c38
52 files changed
+363 -209

No files matched your search

+3 -3
View File
@@ -15,14 +15,14 @@
"hintDefault": "Hint text here",
"toggleOption": "Toggle option",
"toggleSwitch": "Toggle switch",
"closeDialog": "Close dialog",
"closeDialog": "Close",
"moreOptions": "More options",
"moreOptionsMenu": "More options menu",
"closeAlert": "Close alert",
"closeAlert": "Close",
"helpIconAlt": "Help",
"footerAriaLabel": "Footer",
"createFlowFooterAriaLabel": "Create Flow Footer",
"logoAlt": "CommunityRule Logo",
"logoAlt": "CommunityRule",
"logoText": "CommunityRule",
"loadingTemplates": "Loading templates",
"loadingCreateFlow": "Loading create flow",
+1 -1
View File
@@ -3,7 +3,7 @@
"organization": {
"name": "Media Economies Design Lab",
"email": "medlab@colorado.edu",
"url": "https://communityrule.com"
"url": "https://communityrule.info"
},
"social": {
"bluesky": {
+1 -1
View File
@@ -1,3 +1,3 @@
{
"avatarAlt": "Portrait of {author}"
"_comment": "Quote portraits are decorative. The caption next to the photo names the person."
}
+1 -6
View File
@@ -1,8 +1,3 @@
{
"avatarAlts": {
"1": "Avatar 1",
"2": "Avatar 2",
"3": "Avatar 3"
},
"schemaDescription": "Build operating manuals for successful communities"
"_comment": "Create-rule portraits are decorative. The button label names the control, so the photos have no alt text."
}
+9 -7
View File
@@ -3,12 +3,12 @@
"siteName": "CommunityRule",
"titleTemplate": "%s — CommunityRule",
"shareImage": {
"defaultAlt": "CommunityRule — build operating manuals for successful communities",
"defaultAlt": "CommunityRule — build structure before you need it",
"templatesAlt": "CommunityRule governance templates"
},
"home": {
"title": "CommunityRule - Build operating manuals for successful communities",
"description": "Help your community make important decisions in a way that reflects its unique values.",
"title": "Build structure before you need it — CommunityRule",
"description": "Strong communities agree on four things early. They settle how they talk, who belongs, how they decide and what happens when they disagree. Write yours down together.",
"keywords": [
"community",
"governance",
@@ -32,10 +32,12 @@
"description": "See how groups use CommunityRule, who it is for, and practical guides for organizing together."
},
"templates": {
"title": "Templates"
"title": "Templates",
"description": "These are popular patterns for making decisions in mutual aid and open source communities. You can use them as they are or as a starting place for customizing your own CommunityRule."
},
"create": {
"title": "Create"
"title": "Create",
"description": "This flow will give you recommendations to improve your community and help you put together a proposal for your group to consider."
},
"blog": {
"title": "Blog",
@@ -132,7 +134,7 @@
},
"howItWorks": {
"title": "A Guide to CommunityRule",
"description": "CommunityRule is a modular governance toolkit designed to help democratic groups build, customize, and publish their own Operating Manual.",
"description": "Sketch your Rule in CommunityRule, then make it your community's own over five short meetings.",
"keywords": [
"how it works",
"community governance",
@@ -152,7 +154,7 @@
},
"cookies": {
"title": "Cookies Settings",
"description": "CommunityRule uses one cookie, to keep you signed in.",
"description": "CommunityRule uses cookies to keep you signed in and to let you claim a rule you published without an account.",
"keywords": ["cookies", "session", "privacy", "communityrule"]
}
}
+1 -1
View File
@@ -9,6 +9,6 @@
"discord": "Discord",
"email": "Email",
"done": "Done",
"closeDialogAriaLabel": "Close share dialog",
"closeDialogAriaLabel": "Close",
"moreOptionsAriaLabel": "More share options"
}
+1 -1
View File
@@ -1,7 +1,7 @@
{
"banner": {
"title": "A Guide to CommunityRule",
"description": "CommunityRule is a modular governance toolkit designed to help democratic groups build, customize, and publish their own Operating Manual.",
"description": "Sketch your Rule in CommunityRule, then make it your community's own over five short meetings.",
"author": "CommunityRule",
"date": "2026-01-15"
},
+3 -3
View File
@@ -4,9 +4,9 @@
"title": ["See how groups use", "CommunityRule"]
},
"caseStudyTiles": {
"mutualAidColoradoAlt": "Mutual Aid Colorado logo",
"foodNotBombsAlt": "Food Not Bombs logo",
"boulderStreetMedicsAlt": "Boulder Street Medics logo",
"mutualAidColoradoAlt": "",
"foodNotBombsAlt": "",
"boulderStreetMedicsAlt": "",
"links": [
{
"href": "/use-cases/mutual-aid-colorado",
+2 -2
View File
@@ -50,14 +50,14 @@
"name": "Nathan Schneider",
"bio": "Nathan Schneider started CommunityRule and wrote Everything for Everyone, a book about the co-op tradition.",
"image": "/assets/marketing/workshops/nathan-schneider.png",
"imageAlt": "Nathan Schneider"
"imageAlt": ""
},
{
"id": "dani",
"name": "Dani Shipley",
"bio": "Dani Shipley led experience design on CommunityRule and organizes with co-ops and mutual aid communities in Colorado.",
"image": "/assets/marketing/workshops/dani-shipley.png",
"imageAlt": "Dani Shipley"
"imageAlt": ""
}
]
},