Skip to content

Commit be65723

Browse files
committed
feat: extract public website and retain platform authentication
1 parent 5fccf71 commit be65723

1,339 files changed

Lines changed: 17550 additions & 109623 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

‎.agents/skills/add-model/SKILL.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ Within a family, newest first (as the existing entries are ordered). Across fami
112112

113113
## Step 4: Repo-side touchpoints beyond the entry
114114

115-
Adding the `models.ts` entry is most of the job because nearly every consumer is **data-driven** and picks the model up automatically: the ~40 query helpers in `models.ts` / `providers/utils.ts`, the public `/models` catalog (`app/(landing)/models/utils.ts` iterates `PROVIDER_DEFINITIONS`), the agent-block model dropdown, and copilot's `isKnownModelId` / `suggestModelIdsForUnknownModel` validation. The touchpoints below are the exceptions — they are **not** data-driven, so check each one.
115+
Adding the `models.ts` entry is most of the job because nearly every consumer is **data-driven** and picks the model up automatically: the ~40 query helpers in `models.ts` / `providers/utils.ts`, the generated docs model reference (`bun run reference-docs:generate` projects `PROVIDER_DEFINITIONS`), the agent-block model dropdown, and copilot's `isKnownModelId` / `suggestModelIdsForUnknownModel` validation. The touchpoints below are the exceptions — they are **not** data-driven, so check each one.
116116

117117
### Hosted = auto-billed, by provider
118118

‎.agents/skills/design-taste-frontend/SKILL.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ source: https://github.com/leonxlnx/taste-skill — skills/taste-skill/SKILL.md
44
description: Anti-slop frontend skill for landing pages, portfolios, and redesigns. The agent reads the brief, infers the right design direction, and ships interfaces that do not look templated. Real design systems when applicable, audit-first on redesigns, strict pre-flight check.
55
---
66

7-
> **In this repo:** Tailwind 4 (CSS-first config in `apps/sim/app/_styles/globals.css`); animation via `import { motion } from 'framer-motion'` (not `motion/react`); icons from `@sim/emcn/icons`; colors through the CSS-variable tokens in `.claude/rules/sim-styling.md` (no hardcoded `text-gray-*`/hex/`zinc` utilities, no paired `dark:` utilities). This note overrides any conflicting guidance or code sample anywhere in this file. Fonts are fixed (Season body, Inter); never introduce new families, and never use Martian Mono on landing (`apps/sim/app/(landing)/CLAUDE.md`). Font weight is only `font-normal`/`font-medium`/`font-semibold`. Elevation uses the `shadow-subtle|medium|overlay|card` tokens. Type size uses named tokens, never `text-[Npx]`. Every labeled field inside a `ChipModalBody` is a `ChipModalField`. Use `bunx`, never `npx`. Do not add GSAP, Lenis, Three, or shadcn. Landing copy and SEO follow `.claude/rules/constitution.md` and `.claude/rules/landing-seo-geo.md`.
7+
> **In this repo:** Tailwind 4 (CSS-first config in `apps/sim/app/_styles/globals.css`); animation via `import { motion } from 'framer-motion'` (not `motion/react`); icons from `@sim/emcn/icons`; colors through the CSS-variable tokens in `.claude/rules/sim-styling.md` (no hardcoded `text-gray-*`/hex/`zinc` utilities, no paired `dark:` utilities). This note overrides any conflicting guidance or code sample anywhere in this file. Fonts are fixed (Season body, Inter); never introduce new families, and use existing platform families. Font weight is only `font-normal`/`font-medium`/`font-semibold`. Elevation uses the `shadow-subtle|medium|overlay|card` tokens. Type size uses named tokens, never `text-[Npx]`. Every labeled field inside a `ChipModalBody` is a `ChipModalField`. Use `bunx`, never `npx`. Do not add GSAP, Lenis, Three, or shadcn. The public website is maintained in the independent `simstudioai/landing` repository.
88
99
# tasteskill: Anti-Slop Frontend Skill
1010

‎.claude/rules/constitution.md‎

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,9 @@
11
---
22
description: Sim product language, positioning, and tone guidelines
33
paths:
4-
- "apps/sim/app/(landing)/**"
5-
- "apps/sim/lib/landing/**"
6-
- "apps/sim/content/**"
74
- "apps/sim/emails/broadcasts/**"
85
- "apps/sim/app/layout.tsx"
96
- "apps/sim/app/manifest.ts"
10-
- "apps/sim/app/llms*.txt/**"
11-
- "apps/sim/app/changelog.xml/**"
127
- "apps/docs/**"
138
---
149

‎.claude/rules/landing-seo-geo.md‎

Lines changed: 0 additions & 48 deletions
This file was deleted.

‎.claude/rules/sim-ui-copy.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ paths:
99

1010
**Do not add subtitles, helper text, or descriptive copy beneath headings, labels, cards, or settings by default.** Prefer one concise, self-explanatory heading or label. Only add supporting copy when the user explicitly asks for it, or when it is necessary to prevent misunderstanding or error — and never use it to restate the heading.
1111

12-
This applies to product surfaces: settings rows, modals, panels, cards, list rows, empty states, form fields, and section headers. Marketing surfaces (`app/(landing)`, docs) are governed by `constitution.md` instead.
12+
This applies to product surfaces: settings rows, modals, panels, cards, list rows, empty states, form fields, and section headers. Documentation surfaces are governed by `constitution.md` instead.
1313

1414
**Carve-out — settings section metadata.** `SettingsNavigationItem.description` in `components/settings/navigation.ts` stays required, and `SettingsPanel` keeps rendering it as the page subtitle. Settings sections are reached through a nav list where the description is the only thing distinguishing adjacent sections, so it earns its place by the "prevents misunderstanding" test. Keep those descriptions verb-first and one line, per `sim-settings-pages.md`. Everything else on a settings page — inline `<p>` blurbs under section headings, field hints, modal bodies, row subtitles — follows the default rule above.
1515

‎.cursor/rules/constitution.mdc‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
description: "Sim product language, positioning, and tone guidelines"
3-
globs: ["apps/sim/app/(landing)/**","apps/sim/lib/landing/**","apps/sim/content/**","apps/sim/emails/broadcasts/**","apps/sim/app/layout.tsx","apps/sim/app/manifest.ts","apps/sim/app/llms*.txt/**","apps/sim/app/changelog.xml/**","apps/docs/**"]
3+
globs: ["apps/sim/emails/broadcasts/**","apps/sim/app/layout.tsx","apps/sim/app/manifest.ts","apps/docs/**"]
44
---
55

66
<!-- Generated from .claude/rules/constitution.md by `bun run skills:sync`. Edit the source, not this file. -->

‎.cursor/rules/landing-seo-geo.mdc‎

Lines changed: 0 additions & 48 deletions
This file was deleted.

‎.cursor/rules/sim-ui-copy.mdc‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ globs: ["apps/sim/**/*.tsx","packages/emcn/**/*.tsx"]
99

1010
**Do not add subtitles, helper text, or descriptive copy beneath headings, labels, cards, or settings by default.** Prefer one concise, self-explanatory heading or label. Only add supporting copy when the user explicitly asks for it, or when it is necessary to prevent misunderstanding or error — and never use it to restate the heading.
1111

12-
This applies to product surfaces: settings rows, modals, panels, cards, list rows, empty states, form fields, and section headers. Marketing surfaces (`app/(landing)`, docs) are governed by `constitution.md` instead.
12+
This applies to product surfaces: settings rows, modals, panels, cards, list rows, empty states, form fields, and section headers. Documentation surfaces are governed by `constitution.md` instead.
1313

1414
**Carve-out — settings section metadata.** `SettingsNavigationItem.description` in `components/settings/navigation.ts` stays required, and `SettingsPanel` keeps rendering it as the page subtitle. Settings sections are reached through a nav list where the description is the only thing distinguishing adjacent sections, so it earns its place by the "prevents misunderstanding" test. Keep those descriptions verb-first and one line, per `sim-settings-pages.md`. Everything else on a settings page — inline `<p>` blurbs under section headings, field hints, modal bodies, row subtitles — follows the default rule above.
1515

‎.github/workflows/test-build.yml‎

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -163,6 +163,17 @@ jobs:
163163
with:
164164
provider: ${{ vars.CI_PROVIDER }}
165165

166+
- name: Verify landing homepage boundary
167+
working-directory: apps/sim
168+
run: bun --no-env-file scripts/test-landing-e2e.ts
169+
env:
170+
LANDING_BRIDGE_REPORT_PATH: test-results/landing-bridge.json
171+
- uses: actions/upload-artifact@v4
172+
if: always()
173+
with:
174+
name: landing-bridge
175+
path: apps/sim/test-results/landing-bridge*.json
176+
166177
# Migrations create their own extensions, as on a fresh self-hosted install.
167178
- name: Provision the database through migrations
168179
working-directory: packages/db

0 commit comments

Comments
 (0)